@bit-sun/business-component 2.3.6 → 2.3.7

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 (201) 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/Business/BsLayouts/Components/CustomerMenu/MenuSetting/index.d.ts +1 -1
  9. package/dist/components/Business/BsLayouts/Components/CustomerMenu/index.d.ts +1 -1
  10. package/dist/components/Business/SearchSelect/index.d.ts +1 -1
  11. package/dist/components/Business/moreTreeTable/FixedScrollBar.d.ts +1 -1
  12. package/dist/components/Functional/SearchSelect/index.d.ts +1 -1
  13. package/dist/index.esm.js +1071 -999
  14. package/dist/index.js +1077 -1005
  15. package/dist/utils/utils.d.ts +1 -1
  16. package/docs/index.md +21 -21
  17. package/lib/assets/drag.svg +17 -17
  18. package/lib/assets/exportFail.svg +37 -37
  19. package/lib/assets/exportProcessing.svg +28 -28
  20. package/lib/assets/exportSuccess.svg +34 -34
  21. package/lib/assets/label_icon_bottom.svg +25 -25
  22. package/lib/assets/upExport.svg +22 -22
  23. package/package.json +78 -78
  24. package/src/assets/32.svg +27 -27
  25. package/src/assets/addIcon.svg +17 -17
  26. package/src/assets/allfunc.svg +27 -27
  27. package/src/assets/arrowRight.svg +24 -24
  28. package/src/assets/btn-delete.svg +29 -29
  29. package/src/assets/btn-edit.svg +19 -19
  30. package/src/assets/btn-more.svg +17 -17
  31. package/src/assets/btn-submit.svg +19 -19
  32. package/src/assets/caidan.svg +11 -11
  33. package/src/assets/close.svg +26 -26
  34. package/src/assets/drag.svg +17 -17
  35. package/src/assets/exportFail.svg +37 -37
  36. package/src/assets/exportProcessing.svg +28 -28
  37. package/src/assets/exportSuccess.svg +34 -34
  38. package/src/assets/fixed-left-active.svg +11 -11
  39. package/src/assets/fixed-left.svg +15 -15
  40. package/src/assets/fixed-right-active.svg +11 -11
  41. package/src/assets/fixed-right.svg +15 -15
  42. package/src/assets/guanbi.svg +15 -15
  43. package/src/assets/icon-quanping.svg +15 -15
  44. package/src/assets/icon-shezhi.svg +17 -17
  45. package/src/assets/label_icon_bottom.svg +25 -25
  46. package/src/assets/list-no-img.svg +21 -21
  47. package/src/assets/morentouxiang-32.svg +23 -23
  48. package/src/assets/scanning.svg +24 -24
  49. package/src/assets/upExport.svg +22 -22
  50. package/src/common/ENUM.ts +41 -41
  51. package/src/components/Business/AddSelectBusiness/index.md +161 -161
  52. package/src/components/Business/AddSelectBusiness/index.tsx +861 -861
  53. package/src/components/Business/BsLayouts/Components/AllFunc/drawContent.tsx +111 -111
  54. package/src/components/Business/BsLayouts/Components/AllFunc/index.less +153 -153
  55. package/src/components/Business/BsLayouts/Components/AllFunc/index.tsx +70 -70
  56. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/index.less +90 -90
  57. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/index.tsx +37 -37
  58. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/leftTree.tsx +242 -242
  59. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/rightTree.tsx +384 -384
  60. package/src/components/Business/BsLayouts/Components/CustomerMenu/globalMenu/DrawContent.tsx +285 -285
  61. package/src/components/Business/BsLayouts/Components/CustomerMenu/globalMenu/customMenuHeader.tsx +74 -74
  62. package/src/components/Business/BsLayouts/Components/CustomerMenu/globalMenu/drawContent.less +170 -170
  63. package/src/components/Business/BsLayouts/Components/CustomerMenu/index.less +64 -64
  64. package/src/components/Business/BsLayouts/Components/CustomerMenu/index.tsx +153 -153
  65. package/src/components/Business/BsLayouts/Components/GlobalHeader/index.less +72 -72
  66. package/src/components/Business/BsLayouts/Components/GlobalHeader/index.tsx +157 -157
  67. package/src/components/Business/BsLayouts/Components/RightContent/LoginModal.tsx +85 -85
  68. package/src/components/Business/BsLayouts/Components/RightContent/home.less +218 -218
  69. package/src/components/Business/BsLayouts/Components/RightContent/index.tsx +155 -155
  70. package/src/components/Business/BsLayouts/Components/SearchFunc/index.less +160 -160
  71. package/src/components/Business/BsLayouts/Components/SearchFunc/index.tsx +75 -75
  72. package/src/components/Business/BsLayouts/index.less +79 -79
  73. package/src/components/Business/BsLayouts/index.tsx +1484 -1484
  74. package/src/components/Business/BsLayouts/service.ts +10 -10
  75. package/src/components/Business/BsLayouts/utils.tsx +203 -203
  76. package/src/components/Business/BsSulaQueryTable/SearchItemSetting.tsx +564 -564
  77. package/src/components/Business/BsSulaQueryTable/index.less +221 -221
  78. package/src/components/Business/BsSulaQueryTable/index.tsx +527 -527
  79. package/src/components/Business/BsSulaQueryTable/setting.tsx +832 -832
  80. package/src/components/Business/BsSulaQueryTable/utils.less +65 -65
  81. package/src/components/Business/BsSulaQueryTable/utils.tsx +688 -688
  82. package/src/components/Business/CommodityEntry/index.md +70 -70
  83. package/src/components/Business/CommodityEntry/index.tsx +80 -80
  84. package/src/components/Business/CommonAlert/index.tsx +23 -23
  85. package/src/components/Business/CommonGuideWrapper/index.less +111 -111
  86. package/src/components/Business/CommonGuideWrapper/index.md +39 -39
  87. package/src/components/Business/CommonGuideWrapper/index.tsx +83 -83
  88. package/src/components/Business/DetailPageWrapper/index.less +79 -79
  89. package/src/components/Business/DetailPageWrapper/index.tsx +313 -313
  90. package/src/components/Business/DetailPageWrapper/utils.tsx +100 -100
  91. package/src/components/Business/HomePageWrapper/index.less +33 -33
  92. package/src/components/Business/HomePageWrapper/index.md +45 -45
  93. package/src/components/Business/HomePageWrapper/index.tsx +162 -162
  94. package/src/components/Business/JsonQueryTable/components/FieldsModifyModal.tsx +824 -824
  95. package/src/components/Business/JsonQueryTable/components/FieldsSettingsTable.tsx +205 -205
  96. package/src/components/Business/JsonQueryTable/components/Formula.tsx +205 -205
  97. package/src/components/Business/JsonQueryTable/components/MaintainOptions.tsx +127 -127
  98. package/src/components/Business/JsonQueryTable/configButton/index.js +20 -20
  99. package/src/components/Business/JsonQueryTable/configTree/component/compactArrayView.js +25 -25
  100. package/src/components/Business/JsonQueryTable/configTree/component/compactObjectView.js +30 -30
  101. package/src/components/Business/JsonQueryTable/configTree/index.js +82 -82
  102. package/src/components/Business/JsonQueryTable/configTree/index.less +44 -44
  103. package/src/components/Business/JsonQueryTable/configTree/parser/highlight.js +57 -57
  104. package/src/components/Business/JsonQueryTable/configTree/parser/index.js +124 -124
  105. package/src/components/Business/JsonQueryTable/configTree/render/iconRender.js +29 -29
  106. package/src/components/Business/JsonQueryTable/configTree/render/nameRender.js +22 -22
  107. package/src/components/Business/JsonQueryTable/configTree/treeNode.js +116 -116
  108. package/src/components/Business/JsonQueryTable/drawer/index.tsx +12 -12
  109. package/src/components/Business/JsonQueryTable/function.ts +62 -62
  110. package/src/components/Business/JsonQueryTable/index.less +16 -16
  111. package/src/components/Business/JsonQueryTable/index.md +328 -328
  112. package/src/components/Business/JsonQueryTable/index.tsx +535 -535
  113. package/src/components/Business/JsonQueryTable/jsonEditor/index.js +346 -346
  114. package/src/components/Business/JsonQueryTable/jsonEditor/index.less +22 -22
  115. package/src/components/Business/JsonQueryTable/jsonEditor/lint/basicType.js +147 -147
  116. package/src/components/Business/JsonQueryTable/jsonEditor/lint/index.js +389 -389
  117. package/src/components/Business/JsonQueryTable/jsonEditor/suggestions/actions.js +118 -118
  118. package/src/components/Business/JsonQueryTable/jsonEditor/suggestions/dependency.js +22 -22
  119. package/src/components/Business/JsonQueryTable/jsonEditor/suggestions/index.js +21 -21
  120. package/src/components/Business/JsonQueryTable/jsonEditor/suggestions/request.js +65 -65
  121. package/src/components/Business/JsonQueryTable/static.ts +390 -390
  122. package/src/components/Business/SearchSelect/BusinessUtils.ts +1732 -1732
  123. package/src/components/Business/SearchSelect/common.ts +53 -53
  124. package/src/components/Business/SearchSelect/index.md +1319 -1319
  125. package/src/components/Business/SearchSelect/index.tsx +51 -51
  126. package/src/components/Business/SearchSelect/utils.ts +100 -100
  127. package/src/components/Business/StateFlow/index.less +130 -130
  128. package/src/components/Business/StateFlow/index.md +60 -60
  129. package/src/components/Business/StateFlow/index.tsx +29 -29
  130. package/src/components/Business/TreeSearchSelect/index.md +154 -154
  131. package/src/components/Business/TreeSearchSelect/index.tsx +33 -33
  132. package/src/components/Business/TreeSearchSelect/utils.ts +75 -75
  133. package/src/components/Business/columnSettingTable/columnSetting.tsx +764 -764
  134. package/src/components/Business/columnSettingTable/index.less +247 -247
  135. package/src/components/Business/columnSettingTable/index.md +357 -357
  136. package/src/components/Business/columnSettingTable/index.tsx +232 -232
  137. package/src/components/Business/columnSettingTable/sulaSettingTable.tsx +240 -240
  138. package/src/components/Business/columnSettingTable/utils.tsx +68 -68
  139. package/src/components/Business/moreTreeTable/FixedScrollBar.tsx +86 -86
  140. package/src/components/Business/moreTreeTable/hooks/useSticky.ts +21 -21
  141. package/src/components/Business/moreTreeTable/index.less +99 -99
  142. package/src/components/Business/moreTreeTable/index.md +448 -448
  143. package/src/components/Business/moreTreeTable/index.tsx +387 -387
  144. package/src/components/Business/moreTreeTable/utils.ts +126 -126
  145. package/src/components/Functional/AddSelect/helps.ts +14 -14
  146. package/src/components/Functional/AddSelect/index.less +367 -367
  147. package/src/components/Functional/AddSelect/index.md +155 -155
  148. package/src/components/Functional/AddSelect/index.tsx +1279 -1279
  149. package/src/components/Functional/BillEntry/index.less +371 -371
  150. package/src/components/Functional/BillEntry/index.md +39 -39
  151. package/src/components/Functional/BillEntry/index.tsx +772 -772
  152. package/src/components/Functional/BsAntdSula/BsCascader/index.md +62 -62
  153. package/src/components/Functional/BsAntdSula/BsCascader/index.tsx +178 -178
  154. package/src/components/Functional/BsAntdSula/index.ts +2 -2
  155. package/src/components/Functional/DataImport/index.less +63 -63
  156. package/src/components/Functional/DataImport/index.md +44 -44
  157. package/src/components/Functional/DataImport/index.tsx +695 -695
  158. package/src/components/Functional/DataValidation/index.less +63 -63
  159. package/src/components/Functional/DataValidation/index.md +39 -39
  160. package/src/components/Functional/DataValidation/index.tsx +687 -687
  161. package/src/components/Functional/EllipsisTooltip/index.d.ts +5 -5
  162. package/src/components/Functional/EllipsisTooltip/index.js +36 -36
  163. package/src/components/Functional/EllipsisTooltip/index.md +30 -30
  164. package/src/components/Functional/ExportFunctions/ExportIcon/index.md +37 -37
  165. package/src/components/Functional/ExportFunctions/ExportIcon/index.tsx +59 -59
  166. package/src/components/Functional/QueryMutipleInput/index.less +37 -37
  167. package/src/components/Functional/QueryMutipleInput/index.md +33 -33
  168. package/src/components/Functional/QueryMutipleInput/index.tsx +128 -128
  169. package/src/components/Functional/SearchSelect/index.less +115 -115
  170. package/src/components/Functional/SearchSelect/index.md +141 -141
  171. package/src/components/Functional/SearchSelect/index.tsx +858 -855
  172. package/src/components/Functional/SearchSelect/utils.ts +3 -3
  173. package/src/components/Functional/TreeSearchSelect/index.md +47 -47
  174. package/src/components/Functional/TreeSearchSelect/index.tsx +163 -163
  175. package/src/components/Solution/RuleComponent/Formula.tsx +335 -335
  176. package/src/components/Solution/RuleComponent/index.d.ts +29 -29
  177. package/src/components/Solution/RuleComponent/index.js +2028 -2028
  178. package/src/components/Solution/RuleComponent/index.less +230 -230
  179. package/src/components/Solution/RuleComponent/renderSpecificAction.js +99 -99
  180. package/src/components/Solution/RuleComponent/ruleFiled.js +2107 -2074
  181. package/src/components/Solution/RuleComponent/services.ts +13 -13
  182. package/src/components/Solution/RuleComponent/util.js +139 -139
  183. package/src/index.ts +38 -38
  184. package/src/plugin/TableColumnSetting/index.less +247 -247
  185. package/src/plugin/TableColumnSetting/index.md +50 -50
  186. package/src/plugin/TableColumnSetting/index.tsx +724 -724
  187. package/src/plugin/TableColumnSetting/utils.ts +19 -19
  188. package/src/styles/bsDefault.less +1912 -1912
  189. package/src/utils/CheckOneUser/index.md +39 -39
  190. package/src/utils/CheckOneUser/index.ts +51 -51
  191. package/src/utils/LocalstorageUtils.ts +90 -90
  192. package/src/utils/TableUtils.tsx +18 -18
  193. package/src/utils/checkUtils.ts +39 -39
  194. package/src/utils/enumConfig.ts +11 -11
  195. package/src/utils/getFormMode.js +12 -12
  196. package/src/utils/index.ts +4 -4
  197. package/src/utils/requestUtils.ts +34 -34
  198. package/src/utils/serialize.js +7 -7
  199. package/src/utils/utils.ts +212 -212
  200. package/tsconfig.json +29 -29
  201. package/typings.d.ts +4 -4
@@ -1,2074 +1,2107 @@
1
- import React, { Component } from 'react';
2
- import { Select, Input, InputNumber, DatePicker, TimePicker } from 'antd';
3
- import styles from './index.less';
4
- import { getRegularThresholdRange } from './services';
5
- import moment from 'moment';
6
- import { handleError, judgeIsEmpty } from '../../../utils/utils';
7
- import { queryIdentityInfo, findChangedThresholdQuery, setParams } from './util';
8
- import { request as SulaRequest } from 'bssula';
9
- import { stringify } from 'querystring';
10
- import {
11
- BusinessSearchSelect,
12
- BusinessTreeSearchSelect,
13
- BsCascader
14
- } from '../../../index';
15
- const { RangePicker } = DatePicker;
16
-
17
- export default class RuleField extends Component {
18
- constructor(props) {
19
- super(props);
20
- this.state = {
21
- selectOperation: '',
22
- dataTypeCode: '',
23
- dataChoiceBusinessType: '',
24
- dataInputBusinessType: '',
25
- fieldValues: [],
26
- thresholdQuery: {},
27
- thresholdList: [],
28
- options: [],
29
- };
30
- }
31
-
32
- componentDidMount() {
33
- const {
34
- selectOperation,
35
- dataTypeCode,
36
- dataChoiceBusinessType,
37
- dataInputBusinessType,
38
- options,
39
- values,
40
- initialThresholdQuery,
41
- queryIdentify,
42
- propertyCode,
43
- queryIdentifyType,
44
- } = this.props;
45
- this.setState(
46
- {
47
- selectOperation,
48
- thresholdQuery: initialThresholdQuery
49
- ? {
50
- ...initialThresholdQuery,
51
- }
52
- : {},
53
- dataTypeCode,
54
- dataChoiceBusinessType,
55
- dataInputBusinessType,
56
- fieldValues: [...values],
57
- options,
58
- },
59
- () => {
60
- !judgeIsEmpty(queryIdentify) &&
61
- this.getRegularThresholdRange(
62
- queryIdentify,
63
- propertyCode,
64
- queryIdentifyType,
65
- );
66
- },
67
- );
68
- window.addEventListener('testEvent', this.eventHandle);
69
- }
70
-
71
- eventHandle = (obj) => {
72
- const { thresholdQuery } = this.state;
73
- const { queryIdentify, propertyCode, queryIdentifyType } = this.props;
74
- this.setState(
75
- {
76
- thresholdQuery: {
77
- ...thresholdQuery,
78
- ...obj.data,
79
- },
80
- },
81
- () => {
82
- this.getRegularThresholdRange(
83
- queryIdentify,
84
- propertyCode,
85
- queryIdentifyType,
86
- );
87
- },
88
- );
89
- };
90
-
91
- componentWillUnmount() {
92
- window.removeEventListener('testEvent', this.eventHandle);
93
- }
94
-
95
- componentWillReceiveProps(nextProps) {
96
- if (nextProps.selectOperation != this.props.selectOperation) {
97
- this.setState({
98
- selectOperation: nextProps.selectOperation,
99
- });
100
- }
101
- if (nextProps.dataTypeCode != this.props.dataTypeCode) {
102
- this.setState({
103
- dataTypeCode: nextProps.dataTypeCode,
104
- });
105
- }
106
- if (nextProps.dataChoiceBusinessType != this.props.dataChoiceBusinessType) {
107
- this.setState({
108
- dataChoiceBusinessType: nextProps.dataChoiceBusinessType,
109
- });
110
- }
111
- if (nextProps.dataInputBusinessType != this.props.dataInputBusinessType) {
112
- this.setState({
113
- dataInputBusinessType: nextProps.dataInputBusinessType,
114
- });
115
- }
116
- // if (nextProps.selectOperation != this.props.selectOperation) {
117
- // this.setState({
118
- // options: nextProps.options
119
- // })
120
- // }
121
- if (
122
- nextProps.queryIdentify &&
123
- nextProps.queryIdentify != this.props.queryIdentify
124
- ) {
125
- this.getRegularThresholdRange(
126
- nextProps.queryIdentify,
127
- nextProps.propertyCode,
128
- nextProps.queryIdentifyType,
129
- );
130
- }
131
-
132
- if (
133
- JSON.stringify(nextProps.initialThresholdQuery) !=
134
- JSON.stringify(this.props.initialThresholdQuery)
135
- ) {
136
- console.log(
137
- findChangedThresholdQuery(
138
- this.props.initialThresholdQuery,
139
- nextProps.initialThresholdQuery,
140
- ),
141
- );
142
- let changedPropsVal = findChangedThresholdQuery(
143
- this.props.initialThresholdQuery,
144
- nextProps.initialThresholdQuery,
145
- );
146
- this.setState(
147
- {
148
- thresholdQuery: {
149
- ...nextProps.initialThresholdQuery,
150
- },
151
- },
152
- () => {
153
- if (changedPropsVal.indexOf(nextProps.propertyCode) > -1) {
154
- this.getRegularThresholdRange(
155
- nextProps.queryIdentify,
156
- nextProps.propertyCode,
157
- nextProps.queryIdentifyType,
158
- );
159
- }
160
- },
161
- );
162
- }
163
- }
164
-
165
- //规则对象属性枚举值查询处理 queryIdentify有值是表示该属性有枚举选择
166
- getRegularThresholdRange = async (
167
- queryIdentify,
168
- propertyCode,
169
- queryIdentifyType,
170
- ) => {
171
- if (!queryIdentify) return;
172
- const { thresholdQuery } = this.state;
173
- let extraRequestUrl = '';
174
- let querParams = setParams(propertyCode, thresholdQuery);
175
- if (queryIdentityInfo.find((item) => item.identity == propertyCode)) {
176
- //判断查询属性枚举时有没有必传参数,如果必传参数没有值则不调用查询接口
177
- let needQueryList = queryIdentityInfo
178
- .find((item) => item.identity == propertyCode)
179
- .queryParam.filter((item) => item.isRequired)
180
- .map((item) => item.queryKey);
181
- if (
182
- needQueryList.some(
183
- (item) => !querParams[item] || !querParams[item].length,
184
- )
185
- ) {
186
- return;
187
- }
188
- extraRequestUrl =
189
- queryIdentityInfo.find((item) => item.identity == propertyCode)
190
- .requestUrl || '';
191
- }
192
- if (queryIdentifyType === 'dictCodeIdentify') {
193
- extraRequestUrl = `bscDictItem/selectDictItemsByDictCode`; // 字典接口
194
- querParams = { dictCode: queryIdentify };
195
- } else if (queryIdentifyType === 'dynamicDictCodeIdentify') {
196
- extraRequestUrl = `dictDynamicItem/getDynamicData/${queryIdentify}`; // 字典接口
197
- // querParams = { dictCode: queryIdentify }
198
- }
199
-
200
- if (extraRequestUrl) {
201
- if (queryIdentify == 'maintain_area_code') {
202
- extraRequestUrl = `/basic/${extraRequestUrl}${
203
- querParams.memberCardCode
204
- }?${stringify(querParams)}`;
205
- } else if (queryIdentifyType == 'dictCodeIdentify') {
206
- extraRequestUrl = `/basic/${extraRequestUrl}?${stringify(querParams)}`;
207
- } else if (queryIdentifyType == 'dynamicDictCodeIdentify') {
208
- extraRequestUrl = `/basic/${extraRequestUrl}`;
209
- }
210
-
211
- SulaRequest({
212
- url: extraRequestUrl,
213
- method: 'get',
214
- converter: (res) => {
215
- if (handleError(res)) {
216
- let handleData = res?.data || [];
217
- if (queryIdentifyType === 'dictCodeIdentify') {
218
- handleData = handleData?.length
219
- ? handleData.map((i) => ({
220
- code: i.dictItemCode,
221
- name: i.dictItemName,
222
- }))
223
- : [];
224
- }
225
- if (queryIdentifyType === 'dynamicDictCodeIdentify') {
226
- handleData = handleData?.length
227
- ? handleData.map((i) => ({
228
- code: i.code.toString(),
229
- name: i.name,
230
- }))
231
- : [];
232
- }
233
- this.setState({
234
- thresholdList: handleData,
235
- });
236
- }
237
- return handleData;
238
- },
239
- });
240
- } else {
241
- if (queryIdentifyType == 'objectPropertyListIdentify') {
242
- this.setState({
243
- thresholdList: queryIdentify,
244
- });
245
- } else if (queryIdentifyType == 'objectPropertyCodeIdentify') {
246
- // TODO待处理
247
- this.setState({
248
- thresholdList: [],
249
- });
250
- } else {
251
- querParams.queryIdentify = queryIdentify;
252
- let res = await getRegularThresholdRange(querParams);
253
- if (handleError(res)) {
254
- this.setState({
255
- thresholdList: res?.data || [],
256
- });
257
- }
258
- }
259
- }
260
- };
261
-
262
- renderConditionField = () => {
263
- let {
264
- selectOperation,
265
- dataTypeCode,
266
- dataChoiceBusinessType,
267
- dataInputBusinessType,
268
- options,
269
- values,
270
- valueNames,
271
- callback,
272
- queryIdentify,
273
- disabled,
274
- customerWidth,
275
- } = this.props;
276
- const { thresholdList } = this.state;
277
- const dateFormat = 'YYYY-MM-DD';
278
- const fullDateFormat = 'YYYY-MM-DD HH:mm:ss';
279
- const styleCommon = {
280
- width: customerWidth || '150px',
281
- };
282
- if (!selectOperation) return <Input disabled style={styleCommon}></Input>;
283
- const SET_TYPE = ['in', 'nin', 'cn', 'ncn']; //集合类型
284
- const INTERVAL_TYPE = ['be', 'bed', 'nbe', 'nbed', 'ber', 'bel']; //区间类型
285
- const IS_KONG = ['en']; // 为空
286
- if (IS_KONG.indexOf(selectOperation) > -1) {
287
- return '';
288
- }
289
- // queryIdentify有值是表示该属性有枚举选择
290
- if (!judgeIsEmpty(queryIdentify)) {
291
- if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
292
- return (
293
- <>
294
- <Select
295
- disabled={disabled}
296
- showSearch
297
- filterOption={(input, option) =>
298
- option.props.children
299
- ?.toLowerCase()
300
- .indexOf(input.toLowerCase()) >= 0
301
- }
302
- onChange={(value, option) => {
303
- values[0] = value;
304
- valueNames[0] = option?.props?.children || '';
305
- callback(values, valueNames);
306
- }}
307
- value={values[0]}
308
- style={styleCommon}
309
- >
310
- {thresholdList.map((item) => (
311
- <Select.Option value={item.code}>{item.name}</Select.Option>
312
- ))}
313
- </Select>
314
- <span>~</span>
315
- <Select
316
- value={values[1]}
317
- disabled={disabled}
318
- showSearch
319
- filterOption={(input, option) =>
320
- option.props.children
321
- ?.toLowerCase()
322
- .indexOf(input.toLowerCase()) >= 0
323
- }
324
- onChange={(value, option) => {
325
- values[1] = value;
326
- valueNames[1] = option?.props?.children || '';
327
- callback(values, valueNames);
328
- }}
329
- style={styleCommon}
330
- >
331
- {thresholdList.map((item) => (
332
- <Select.Option value={item.code}>{item.name}</Select.Option>
333
- ))}
334
- </Select>
335
- </>
336
- );
337
- } else {
338
- return (
339
- <Select
340
- disabled={disabled}
341
- showSearch
342
- filterOption={(input, option) =>
343
- option.props.children
344
- ?.toLowerCase()
345
- .indexOf(input.toLowerCase()) >= 0
346
- }
347
- onChange={(value, option) => {
348
- if (SET_TYPE.indexOf(selectOperation) > -1) {
349
- let valueNames1 = Array.isArray(option)
350
- ? option.map((item) => item?.props?.children || '')
351
- : [];
352
- values = [...value];
353
- valueNames = [...valueNames1];
354
- } else {
355
- values = [value];
356
- valueNames = [option?.props?.children || ''];
357
- }
358
- callback(values, valueNames);
359
- }}
360
- value={SET_TYPE.indexOf(selectOperation) > -1 ? values : values[0]}
361
- style={styleCommon}
362
- mode={
363
- SET_TYPE.indexOf(selectOperation) > -1 ? 'multiple' : 'default'
364
- }
365
- >
366
- {thresholdList.map((item) => (
367
- <Select.Option value={item.code}>{item.name}</Select.Option>
368
- ))}
369
- </Select>
370
- );
371
- }
372
- } else if (dataInputBusinessType == 11 || dataInputBusinessType == 12) {
373
- // 11 单选 12 多选
374
- // 物理仓
375
- if (dataChoiceBusinessType == 110) {
376
- if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
377
- return (
378
- <>
379
- <BusinessSearchSelect
380
- selectBusinessType="physicalWarehouse"
381
- selectProps={{
382
- style: styleCommon,
383
- placeholder: '请选择物理仓',
384
- ...(dataInputBusinessType === 12
385
- ? {
386
- mode: 'multiple',
387
- maxTagCount: 1,
388
- }
389
- : {}),
390
- }}
391
- disabled={disabled}
392
- labelInValue={true}
393
- value={values[0]}
394
- requestConfig={{
395
- mappingValueField: 'physicalWarehouseCode',
396
- filterInit: 'qp-physicalWarehouseCode-in',
397
- }}
398
- onChange={(value) => {
399
- if (dataInputBusinessType === 12) {
400
- values[0] = value.map((i) => i.key);
401
- valueNames[0] = value.map((i) => i.label || '');
402
- } else {
403
- values[0] = [value.key];
404
- valueNames[0] = [value.label || ''];
405
- }
406
- callback(values, valueNames);
407
- }}
408
- getPopupContainer={() => document.body}
409
- />
410
- <span>~</span>
411
- <BusinessSearchSelect
412
- selectBusinessType="physicalWarehouse"
413
- selectProps={{
414
- style: styleCommon,
415
- placeholder: '请选择物理仓',
416
- ...(dataInputBusinessType === 12
417
- ? {
418
- mode: 'multiple',
419
- maxTagCount: 1,
420
- }
421
- : {}),
422
- }}
423
- disabled={disabled}
424
- labelInValue={true}
425
- value={values[1]}
426
- requestConfig={{
427
- mappingValueField: 'physicalWarehouseCode',
428
- filterInit: 'qp-physicalWarehouseCode-in',
429
- }}
430
- onChange={(value) => {
431
- if (dataInputBusinessType === 12) {
432
- values[1] = value.map((i) => i.key);
433
- valueNames[1] = value.map((i) => i.label || '');
434
- } else {
435
- values[1] = [value.key];
436
- valueNames[1] = [value.label || ''];
437
- }
438
- callback(values, valueNames);
439
- }}
440
- getPopupContainer={() => document.body}
441
- />
442
- </>
443
- );
444
- } else {
445
- return (
446
- <BusinessSearchSelect
447
- selectBusinessType="physicalWarehouse"
448
- selectProps={{
449
- style: styleCommon,
450
- placeholder: '请选择物理仓',
451
- ...(dataInputBusinessType === 12
452
- ? {
453
- mode: 'multiple',
454
- maxTagCount: 1,
455
- }
456
- : {}),
457
- }}
458
- disabled={disabled}
459
- labelInValue={true}
460
- value={dataInputBusinessType === 12 ? values : values[0]}
461
- requestConfig={{
462
- mappingValueField: 'physicalWarehouseCode',
463
- filterInit: 'qp-physicalWarehouseCode-in',
464
- }}
465
- onChange={(value) => {
466
- if (dataInputBusinessType === 12) {
467
- values = value.map((i) => i.key);
468
- valueNames = value.map((i) => i.label || '');
469
- } else {
470
- values = [value.key];
471
- valueNames = [value.label || ''];
472
- }
473
- callback(values, valueNames);
474
- }}
475
- getPopupContainer={() => document.body}
476
- />
477
- );
478
- }
479
- }
480
- // 逻辑仓
481
- if (dataChoiceBusinessType == 120) {
482
- if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
483
- return (
484
- <>
485
- <BusinessSearchSelect
486
- selectBusinessType="realWarehouse"
487
- selectProps={{
488
- style: styleCommon,
489
- placeholder: '请选择逻辑仓',
490
- ...(dataInputBusinessType === 12
491
- ? {
492
- mode: 'multiple',
493
- maxTagCount: 1,
494
- }
495
- : {}),
496
- }}
497
- disabled={disabled}
498
- labelInValue={true}
499
- value={values[0]}
500
- requestConfig={{
501
- mappingValueField: 'realWarehouseCode',
502
- filterInit: 'qp-realWarehouseCode-in',
503
- }}
504
- onChange={(value) => {
505
- if (dataInputBusinessType === 12) {
506
- values[0] = value.map((i) => i.key);
507
- valueNames[0] = value.map((i) => i.label || '');
508
- } else {
509
- values[0] = [value.key];
510
- valueNames[0] = [value.label || ''];
511
- }
512
- callback(values, valueNames);
513
- }}
514
- getPopupContainer={() => document.body}
515
- />
516
- <span>~</span>
517
- <BusinessSearchSelect
518
- selectBusinessType="realWarehouse"
519
- selectProps={{
520
- style: styleCommon,
521
- placeholder: '请选择逻辑仓',
522
- ...(dataInputBusinessType === 12
523
- ? {
524
- mode: 'multiple',
525
- maxTagCount: 1,
526
- }
527
- : {}),
528
- }}
529
- disabled={disabled}
530
- labelInValue={true}
531
- value={values[1]}
532
- requestConfig={{
533
- mappingValueField: 'realWarehouseCode',
534
- filterInit: 'qp-realWarehouseCode-in',
535
- }}
536
- onChange={(value) => {
537
- if (dataInputBusinessType === 12) {
538
- values[1] = value.map((i) => i.key);
539
- valueNames[1] = value.map((i) => i.label || '');
540
- } else {
541
- values[1] = [value.key];
542
- valueNames[1] = [value.label || ''];
543
- }
544
- callback(values, valueNames);
545
- }}
546
- getPopupContainer={() => document.body}
547
- />
548
- </>
549
- );
550
- } else {
551
- return (
552
- <BusinessSearchSelect
553
- selectBusinessType="realWarehouse"
554
- selectProps={{
555
- style: styleCommon,
556
- placeholder: '请选择逻辑仓',
557
- ...(dataInputBusinessType === 12
558
- ? {
559
- mode: 'multiple',
560
- maxTagCount: 1,
561
- }
562
- : {}),
563
- }}
564
- disabled={disabled}
565
- labelInValue={true}
566
- value={dataInputBusinessType === 12 ? values : values[0]}
567
- requestConfig={{
568
- mappingValueField: 'realWarehouseCode',
569
- filterInit: 'qp-realWarehouseCode-in',
570
- }}
571
- onChange={(value) => {
572
- if (dataInputBusinessType === 12) {
573
- values = value.map((i) => i.key);
574
- valueNames = value.map((i) => i.label || '');
575
- } else {
576
- values = [value.key];
577
- valueNames = [value.label || ''];
578
- }
579
- callback(values, valueNames);
580
- }}
581
- getPopupContainer={() => document.body}
582
- />
583
- );
584
- }
585
- }
586
- // 虚拟仓
587
- if (dataChoiceBusinessType == 130) {
588
- if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
589
- return (
590
- <>
591
- <BusinessSearchSelect
592
- selectBusinessType="virtualWarehouse"
593
- selectProps={{
594
- style: styleCommon,
595
- placeholder: '请选择虚拟仓',
596
- ...(dataInputBusinessType === 12
597
- ? {
598
- mode: 'multiple',
599
- maxTagCount: 1,
600
- }
601
- : {}),
602
- }}
603
- disabled={disabled}
604
- labelInValue={true}
605
- value={values[0]}
606
- requestConfig={{
607
- mappingValueField: 'virtualWarehouseCode',
608
- filterInit: 'qp-virtualWarehouseCode-in',
609
- }}
610
- onChange={(value) => {
611
- if (dataInputBusinessType === 12) {
612
- values[0] = value.map((i) => i.key);
613
- valueNames[0] = value.map((i) => i.label || '');
614
- } else {
615
- values[0] = [value.key];
616
- valueNames[0] = [value.label || ''];
617
- }
618
- callback(values, valueNames);
619
- }}
620
- getPopupContainer={() => document.body}
621
- />
622
- <span>~</span>
623
- <BusinessSearchSelect
624
- selectBusinessType="virtualWarehouse"
625
- selectProps={{
626
- style: styleCommon,
627
- placeholder: '请选择虚拟仓',
628
- ...(dataInputBusinessType === 12
629
- ? {
630
- mode: 'multiple',
631
- maxTagCount: 1,
632
- }
633
- : {}),
634
- }}
635
- disabled={disabled}
636
- labelInValue={true}
637
- value={values[1]}
638
- requestConfig={{
639
- mappingValueField: 'virtualWarehouseCode',
640
- filterInit: 'qp-virtualWarehouseCode-in',
641
- }}
642
- onChange={(value) => {
643
- if (dataInputBusinessType === 12) {
644
- values[1] = value.map((i) => i.key);
645
- valueNames[1] = value.map((i) => i.label || '');
646
- } else {
647
- values[1] = [value.key];
648
- valueNames[1] = [value.label || ''];
649
- }
650
- callback(values, valueNames);
651
- }}
652
- getPopupContainer={() => document.body}
653
- />
654
- </>
655
- );
656
- } else {
657
- return (
658
- <BusinessSearchSelect
659
- selectBusinessType="virtualWarehouse"
660
- selectProps={{
661
- style: styleCommon,
662
- placeholder: '请选择虚拟仓',
663
- ...(dataInputBusinessType === 12
664
- ? {
665
- mode: 'multiple',
666
- maxTagCount: 1,
667
- }
668
- : {}),
669
- }}
670
- disabled={disabled}
671
- labelInValue={true}
672
- value={dataInputBusinessType === 12 ? values : values[0]}
673
- requestConfig={{
674
- mappingValueField: 'virtualWarehouseCode',
675
- filterInit: 'qp-virtualWarehouseCode-in',
676
- }}
677
- onChange={(value) => {
678
- if (dataInputBusinessType === 12) {
679
- values = value.map((i) => i.key);
680
- valueNames = value.map((i) => i.label || '');
681
- } else {
682
- values = [value.key];
683
- valueNames = [value.label || ''];
684
- }
685
- callback(values, valueNames);
686
- }}
687
- getPopupContainer={() => document.body}
688
- />
689
- );
690
- }
691
- }
692
- // 渠道仓
693
- if (dataChoiceBusinessType == 140) {
694
- if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
695
- return (
696
- <>
697
- <BusinessSearchSelect
698
- selectBusinessType="channelWarehouse"
699
- selectProps={{
700
- style: styleCommon,
701
- placeholder: '请选择渠道仓',
702
- ...(dataInputBusinessType === 12
703
- ? {
704
- mode: 'multiple',
705
- maxTagCount: 1,
706
- }
707
- : {}),
708
- }}
709
- disabled={disabled}
710
- labelInValue={true}
711
- value={values[0]}
712
- requestConfig={{
713
- mappingValueField: 'channelWarehouseCode',
714
- filterInit: 'qp-channelWarehouseCode-in',
715
- }}
716
- onChange={(value) => {
717
- if (dataInputBusinessType === 12) {
718
- values[0] = value.map((i) => i.key);
719
- valueNames[0] = value.map((i) => i.label || '');
720
- } else {
721
- values[0] = [value.key];
722
- valueNames[0] = [value.label || ''];
723
- }
724
- callback(values, valueNames);
725
- }}
726
- getPopupContainer={() => document.body}
727
- />
728
- <span>~</span>
729
- <BusinessSearchSelect
730
- selectBusinessType="channelWarehouse"
731
- selectProps={{
732
- style: styleCommon,
733
- placeholder: '请选择渠道仓',
734
- ...(dataInputBusinessType === 12
735
- ? {
736
- mode: 'multiple',
737
- maxTagCount: 1,
738
- }
739
- : {}),
740
- }}
741
- disabled={disabled}
742
- labelInValue={true}
743
- value={values[1]}
744
- requestConfig={{
745
- mappingValueField: 'channelWarehouseCode',
746
- filterInit: 'qp-channelWarehouseCode-in',
747
- }}
748
- onChange={(value) => {
749
- if (dataInputBusinessType === 12) {
750
- values[1] = value.map((i) => i.key);
751
- valueNames[1] = value.map((i) => i.label || '');
752
- } else {
753
- values[1] = [value.key];
754
- valueNames[1] = [value.label || ''];
755
- }
756
- callback(values, valueNames);
757
- }}
758
- getPopupContainer={() => document.body}
759
- />
760
- </>
761
- );
762
- } else {
763
- return (
764
- <BusinessSearchSelect
765
- selectBusinessType="channelWarehouse"
766
- selectProps={{
767
- style: styleCommon,
768
- placeholder: '请选择渠道仓',
769
- ...(dataInputBusinessType === 12
770
- ? {
771
- mode: 'multiple',
772
- maxTagCount: 1,
773
- }
774
- : {}),
775
- }}
776
- disabled={disabled}
777
- labelInValue={true}
778
- value={dataInputBusinessType === 12 ? values : values[0]}
779
- requestConfig={{
780
- mappingValueField: 'channelWarehouseCode',
781
- filterInit: 'qp-channelWarehouseCode-in',
782
- }}
783
- onChange={(value) => {
784
- if (dataInputBusinessType === 12) {
785
- values = value.map((i) => i.key);
786
- valueNames = value.map((i) => i.label || '');
787
- } else {
788
- values = [value.key];
789
- valueNames = [value.label || ''];
790
- }
791
- callback(values, valueNames);
792
- }}
793
- getPopupContainer={() => document.body}
794
- />
795
- );
796
- }
797
- }
798
- // 商品SPU选择器
799
- if (dataChoiceBusinessType == 150) {
800
- if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
801
- return (
802
- <>
803
- <BusinessSearchSelect
804
- selectBusinessType="spuCommodity"
805
- selectProps={{
806
- style: styleCommon,
807
- placeholder: '请选择SPU',
808
- ...(dataInputBusinessType === 12
809
- ? {
810
- mode: 'multiple',
811
- maxTagCount: 1,
812
- }
813
- : {}),
814
- }}
815
- disabled={disabled}
816
- labelInValue={true}
817
- value={values[0]}
818
- requestConfig={{
819
- filterInit: 'qp-itemCode-in',
820
- }}
821
- onChange={(value) => {
822
- if (dataInputBusinessType === 12) {
823
- values[0] = value.map((i) => i.key);
824
- valueNames[0] = value.map((i) => i.label || '');
825
- } else {
826
- values[0] = [value.key];
827
- valueNames[0] = [value.label || ''];
828
- }
829
- callback(values, valueNames);
830
- }}
831
- getPopupContainer={() => document.body}
832
- />
833
- <span>~</span>
834
- <BusinessSearchSelect
835
- selectBusinessType="spuCommodity"
836
- selectProps={{
837
- style: styleCommon,
838
- placeholder: '请选择SPU',
839
- ...(dataInputBusinessType === 12
840
- ? {
841
- mode: 'multiple',
842
- maxTagCount: 1,
843
- }
844
- : {}),
845
- }}
846
- disabled={disabled}
847
- labelInValue={true}
848
- value={values[1]}
849
- requestConfig={{
850
- filterInit: 'qp-itemCode-in',
851
- }}
852
- onChange={(value) => {
853
- if (dataInputBusinessType === 12) {
854
- values[1] = value.map((i) => i.key);
855
- valueNames[1] = value.map((i) => i.label || '');
856
- } else {
857
- values[1] = [value.key];
858
- valueNames[1] = [value.label || ''];
859
- }
860
- callback(values, valueNames);
861
- }}
862
- getPopupContainer={() => document.body}
863
- />
864
- </>
865
- );
866
- } else {
867
- return (
868
- <BusinessSearchSelect
869
- selectBusinessType="spuCommodity"
870
- selectProps={{
871
- style: styleCommon,
872
- placeholder: '请选择SPU',
873
- ...(dataInputBusinessType === 12
874
- ? {
875
- mode: 'multiple',
876
- maxTagCount: 1,
877
- }
878
- : {}),
879
- }}
880
- disabled={disabled}
881
- labelInValue={true}
882
- value={dataInputBusinessType === 12 ? values : values[0]}
883
- requestConfig={{
884
- filterInit: 'qp-itemCode-in',
885
- }}
886
- onChange={(value) => {
887
- if (dataInputBusinessType === 12) {
888
- values = value.map((i) => i.key);
889
- valueNames = value.map((i) => i.label || '');
890
- } else {
891
- values = [value.key];
892
- valueNames = [value.label || ''];
893
- }
894
- callback(values, valueNames);
895
- }}
896
- getPopupContainer={() => document.body}
897
- />
898
- );
899
- }
900
- }
901
- // 商品SKU选择器
902
- if (dataChoiceBusinessType == 160) {
903
- if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
904
- return (
905
- <>
906
- <BusinessSearchSelect
907
- selectBusinessType="skuCommodity"
908
- selectProps={{
909
- style: styleCommon,
910
- placeholder: '请选择商品',
911
- ...(dataInputBusinessType === 12
912
- ? {
913
- mode: 'multiple',
914
- maxTagCount: 1,
915
- }
916
- : {}),
917
- }}
918
- disabled={disabled}
919
- labelInValue={true}
920
- value={values[0]}
921
- requestConfig={{
922
- filterInit: 'qp-skuCode-in',
923
- }}
924
- onChange={(value) => {
925
- if (dataInputBusinessType === 12) {
926
- values[0] = value.map((i) => i.key);
927
- valueNames[0] = value.map((i) => i.label || '');
928
- } else {
929
- values[0] = [value.key];
930
- valueNames[0] = [value.label || ''];
931
- }
932
- callback(values, valueNames);
933
- }}
934
- getPopupContainer={() => document.body}
935
- />
936
- <span>~</span>
937
- <BusinessSearchSelect
938
- selectBusinessType="skuCommodity"
939
- selectProps={{
940
- style: styleCommon,
941
- placeholder: '请选择商品',
942
- ...(dataInputBusinessType === 12
943
- ? {
944
- mode: 'multiple',
945
- maxTagCount: 1,
946
- }
947
- : {}),
948
- }}
949
- disabled={disabled}
950
- labelInValue={true}
951
- value={values[1]}
952
- requestConfig={{
953
- filterInit: 'qp-skuCode-in',
954
- }}
955
- onChange={(value) => {
956
- if (dataInputBusinessType === 12) {
957
- values[1] = value.map((i) => i.key);
958
- valueNames[1] = value.map((i) => i.label || '');
959
- } else {
960
- values[1] = [value.key];
961
- valueNames[1] = [value.label || ''];
962
- }
963
- callback(values, valueNames);
964
- }}
965
- getPopupContainer={() => document.body}
966
- />
967
- </>
968
- );
969
- } else {
970
- return (
971
- <BusinessSearchSelect
972
- selectBusinessType="skuCommodity"
973
- selectProps={{
974
- style: styleCommon,
975
- placeholder: '请选择商品',
976
- ...(dataInputBusinessType === 12
977
- ? {
978
- mode: 'multiple',
979
- maxTagCount: 1,
980
- }
981
- : {}),
982
- }}
983
- disabled={disabled}
984
- labelInValue={true}
985
- value={dataInputBusinessType === 12 ? values : values[0]}
986
- requestConfig={{
987
- filterInit: 'qp-skuCode-in',
988
- }}
989
- onChange={(value) => {
990
- if (dataInputBusinessType === 12) {
991
- values = value.map((i) => i.key);
992
- valueNames = value.map((i) => i.label || '');
993
- } else {
994
- values = [value.key];
995
- valueNames = [value.label || ''];
996
- }
997
- callback(values, valueNames);
998
- }}
999
- getPopupContainer={() => document.body}
1000
- />
1001
- );
1002
- }
1003
- }
1004
- // 省市区
1005
- if (dataChoiceBusinessType == 190) {
1006
- if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
1007
- return (
1008
- <>
1009
- <BsCascader
1010
- disabled={disabled}
1011
- isAll={true}
1012
- needNameAndCode={true}
1013
- notChangeOnSelect={true}
1014
- initRequestSource={async () => {
1015
- return await SulaRequest({
1016
- url: '/basic/bscArea/getBscAreaList?qp-level-eq=1&qp-pid-eq=100000',
1017
- method: 'get',
1018
- converter: ({ data }) => {
1019
- const handleData =
1020
- data && data[0]
1021
- ? data?.map((item) => {
1022
- return {
1023
- text: item.name,
1024
- value: item.id,
1025
- level: item.level,
1026
- id: item.id,
1027
- };
1028
- })
1029
- : [];
1030
- return handleData;
1031
- },
1032
- });
1033
- }}
1034
- style={{ width: 240 }}
1035
- value={{ PCDName: valueNames[0] || [] }}
1036
- onChange={(value) => {
1037
- values[0] = value.PCDCode;
1038
- valueNames[0] = value.PCDName;
1039
- callback(values, valueNames);
1040
- }}
1041
- getPopupContainer={() => document.body}
1042
- />
1043
- <span>~</span>
1044
- <BsCascader
1045
- disabled={disabled}
1046
- onlyCode={true}
1047
- isAll={true}
1048
- needNameAndCode={true}
1049
- notChangeOnSelect={true}
1050
- initRequestSource={async () => {
1051
- return await SulaRequest({
1052
- url: '/basic/bscArea/getBscAreaList?qp-level-eq=1&qp-pid-eq=100000',
1053
- method: 'get',
1054
- converter: ({ data }) => {
1055
- const handleData =
1056
- data && data[0]
1057
- ? data?.map((item) => {
1058
- return {
1059
- text: item.name,
1060
- value: item.id,
1061
- level: item.level,
1062
- id: item.id,
1063
- };
1064
- })
1065
- : [];
1066
- return handleData;
1067
- },
1068
- });
1069
- }}
1070
- style={{ width: 240 }}
1071
- value={{ PCDName: valueNames[1] || [] }}
1072
- onChange={(value) => {
1073
- values[1] = value.PCDCode;
1074
- valueNames[1] = value.PCDName;
1075
- callback(values, valueNames);
1076
- }}
1077
- getPopupContainer={() => document.body}
1078
- />
1079
- </>
1080
- );
1081
- } else {
1082
- return (
1083
- <BsCascader
1084
- disabled={disabled}
1085
- onlyCode={true}
1086
- isAll={true}
1087
- needNameAndCode={true}
1088
- notChangeOnSelect={true}
1089
- initRequestSource={async () => {
1090
- return await SulaRequest({
1091
- url: '/basic/bscArea/getBscAreaList?qp-level-eq=1&qp-pid-eq=100000',
1092
- method: 'get',
1093
- converter: ({ data }) => {
1094
- const handleData =
1095
- data && data[0]
1096
- ? data?.map((item) => {
1097
- return {
1098
- text: item.name,
1099
- value: item.id,
1100
- level: item.level,
1101
- id: item.id,
1102
- };
1103
- })
1104
- : [];
1105
- return handleData;
1106
- },
1107
- });
1108
- }}
1109
- style={{ width: 240 }}
1110
- value={{ PCDName: valueNames || [] }}
1111
- onChange={(value) => {
1112
- values = value.PCDCode;
1113
- valueNames = value.PCDName;
1114
- callback(values, valueNames);
1115
- }}
1116
- getPopupContainer={() => document.body}
1117
- />
1118
- );
1119
- }
1120
- }
1121
- // 行政组织选择器
1122
- if (dataChoiceBusinessType == 210) {
1123
- if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
1124
- return (
1125
- <>
1126
- <BusinessTreeSearchSelect
1127
- disabled={disabled}
1128
- treeCheckable={dataInputBusinessType === 12}
1129
- businessType="department"
1130
- labelInValue={true}
1131
- value={values[0]}
1132
- style={styleCommon}
1133
- onChange={(value) => {
1134
- if (dataInputBusinessType === 12) {
1135
- values[0] = value.map((i) => i.key);
1136
- valueNames[0] = value.map((i) => i.label || '');
1137
- } else {
1138
- values[0] = [value.key];
1139
- valueNames[0] = [value.label || ''];
1140
- }
1141
- callback(values, valueNames);
1142
- }}
1143
- getPopupContainer={() => document.body}
1144
- />
1145
- <span>~</span>
1146
- <BusinessTreeSearchSelect
1147
- disabled={disabled}
1148
- treeCheckable={dataInputBusinessType === 12}
1149
- businessType="department"
1150
- labelInValue={true}
1151
- value={values[0]}
1152
- style={styleCommon}
1153
- onChange={(value) => {
1154
- if (dataInputBusinessType === 12) {
1155
- values[1] = value.map((i) => i.key);
1156
- valueNames[1] = value.map((i) => i.label || '');
1157
- } else {
1158
- values[1] = [value.key];
1159
- valueNames[1] = [value.label || ''];
1160
- }
1161
- callback(values, valueNames);
1162
- }}
1163
- getPopupContainer={() => document.body}
1164
- />
1165
- </>
1166
- );
1167
- } else {
1168
- return (
1169
- <BusinessTreeSearchSelect
1170
- disabled={disabled}
1171
- treeCheckable={dataInputBusinessType === 12}
1172
- businessType="department"
1173
- labelInValue={true}
1174
- value={values[0]}
1175
- style={styleCommon}
1176
- onChange={(value) => {
1177
- if (dataInputBusinessType === 12) {
1178
- values = value.map((i) => i.key);
1179
- valueNames = value.map((i) => i.label || '');
1180
- } else {
1181
- values = [value.key];
1182
- valueNames = [value.label || ''];
1183
- }
1184
- callback(values, valueNames);
1185
- }}
1186
- getPopupContainer={() => document.body}
1187
- />
1188
- );
1189
- }
1190
- }
1191
- // 采购组织选择器
1192
- if (dataChoiceBusinessType == 220) {
1193
- if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
1194
- return (
1195
- <>
1196
- <BusinessTreeSearchSelect
1197
- disabled={disabled}
1198
- treeCheckable={dataInputBusinessType === 12}
1199
- businessType="purchase-organization"
1200
- labelInValue={true}
1201
- value={values[0]}
1202
- style={styleCommon}
1203
- onChange={(value) => {
1204
- if (dataInputBusinessType === 12) {
1205
- values[0] = value.map((i) => i.key);
1206
- valueNames[0] = value.map((i) => i.label || '');
1207
- } else {
1208
- values[0] = [value.key];
1209
- valueNames[0] = [value.label || ''];
1210
- }
1211
- callback(values, valueNames);
1212
- }}
1213
- getPopupContainer={() => document.body}
1214
- />
1215
- <span>~</span>
1216
- <BusinessTreeSearchSelect
1217
- disabled={disabled}
1218
- treeCheckable={dataInputBusinessType === 12}
1219
- businessType="purchase-organization"
1220
- labelInValue={true}
1221
- value={values[0]}
1222
- style={styleCommon}
1223
- onChange={(value) => {
1224
- if (dataInputBusinessType === 12) {
1225
- values[1] = value.map((i) => i.key);
1226
- valueNames[1] = value.map((i) => i.label || '');
1227
- } else {
1228
- values[1] = [value.key];
1229
- valueNames[1] = [value.label || ''];
1230
- }
1231
- callback(values, valueNames);
1232
- }}
1233
- getPopupContainer={() => document.body}
1234
- />
1235
- </>
1236
- );
1237
- } else {
1238
- return (
1239
- <BusinessTreeSearchSelect
1240
- disabled={disabled}
1241
- treeCheckable={dataInputBusinessType === 12}
1242
- businessType="purchase-organization"
1243
- labelInValue={true}
1244
- value={values[0]}
1245
- style={styleCommon}
1246
- onChange={(value) => {
1247
- if (dataInputBusinessType === 12) {
1248
- values = value.map((i) => i.key);
1249
- valueNames = value.map((i) => i.label || '');
1250
- } else {
1251
- values = [value.key];
1252
- valueNames = [value.label || ''];
1253
- }
1254
- callback(values, valueNames);
1255
- }}
1256
- getPopupContainer={() => document.body}
1257
- />
1258
- );
1259
- }
1260
- }
1261
- // 销售组织选择器
1262
- if (dataChoiceBusinessType == 230) {
1263
- if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
1264
- return (
1265
- <>
1266
- <BusinessTreeSearchSelect
1267
- disabled={disabled}
1268
- treeCheckable={dataInputBusinessType === 12}
1269
- businessType="sales-organization"
1270
- labelInValue={true}
1271
- value={values[0]}
1272
- style={styleCommon}
1273
- onChange={(value) => {
1274
- if (dataInputBusinessType === 12) {
1275
- values[0] = value.map((i) => i.key);
1276
- valueNames[0] = value.map((i) => i.label || '');
1277
- } else {
1278
- values[0] = [value.key];
1279
- valueNames[0] = [value.label || ''];
1280
- }
1281
- callback(values, valueNames);
1282
- }}
1283
- getPopupContainer={() => document.body}
1284
- />
1285
- <span>~</span>
1286
- <BusinessTreeSearchSelect
1287
- disabled={disabled}
1288
- treeCheckable={dataInputBusinessType === 12}
1289
- businessType="sales-organization"
1290
- labelInValue={true}
1291
- value={values[0]}
1292
- style={styleCommon}
1293
- onChange={(value) => {
1294
- if (dataInputBusinessType === 12) {
1295
- values[1] = value.map((i) => i.key);
1296
- valueNames[1] = value.map((i) => i.label || '');
1297
- } else {
1298
- values[1] = [value.key];
1299
- valueNames[1] = [value.label || ''];
1300
- }
1301
- callback(values, valueNames);
1302
- }}
1303
- getPopupContainer={() => document.body}
1304
- />
1305
- </>
1306
- );
1307
- } else {
1308
- return (
1309
- <BusinessTreeSearchSelect
1310
- disabled={disabled}
1311
- treeCheckable={dataInputBusinessType === 12}
1312
- businessType="sales-organization"
1313
- labelInValue={true}
1314
- value={values[0]}
1315
- style={styleCommon}
1316
- onChange={(value) => {
1317
- if (dataInputBusinessType === 12) {
1318
- values = value.map((i) => i.key);
1319
- valueNames = value.map((i) => i.label || '');
1320
- } else {
1321
- values = [value.key];
1322
- valueNames = [value.label || ''];
1323
- }
1324
- callback(values, valueNames);
1325
- }}
1326
- getPopupContainer={() => document.body}
1327
- />
1328
- );
1329
- }
1330
- }
1331
- // 供应商选择器
1332
- if (dataChoiceBusinessType == 240) {
1333
- if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
1334
- return (
1335
- <>
1336
- <BusinessSearchSelect
1337
- selectBusinessType="supplier2"
1338
- selectProps={{
1339
- style: styleCommon,
1340
- placeholder: '请选择供应商',
1341
- ...(dataInputBusinessType === 12
1342
- ? {
1343
- mode: 'multiple',
1344
- maxTagCount: 1,
1345
- }
1346
- : {}),
1347
- }}
1348
- disabled={disabled}
1349
- labelInValue={true}
1350
- value={values[0]}
1351
- requestConfig={{
1352
- filterInit: 'qp-code-in',
1353
- }}
1354
- onChange={(value) => {
1355
- if (dataInputBusinessType === 12) {
1356
- values[0] = value.map((i) => i.key);
1357
- valueNames[0] = value.map((i) => i.label || '');
1358
- } else {
1359
- values[0] = [value.key];
1360
- valueNames[0] = [value.label || ''];
1361
- }
1362
- callback(values, valueNames);
1363
- }}
1364
- getPopupContainer={() => document.body}
1365
- />
1366
- <span>~</span>
1367
- <BusinessSearchSelect
1368
- selectBusinessType="supplier2"
1369
- selectProps={{
1370
- style: styleCommon,
1371
- placeholder: '请选择供应商',
1372
- ...(dataInputBusinessType === 12
1373
- ? {
1374
- mode: 'multiple',
1375
- maxTagCount: 1,
1376
- }
1377
- : {}),
1378
- }}
1379
- disabled={disabled}
1380
- labelInValue={true}
1381
- value={values[1]}
1382
- requestConfig={{
1383
- filterInit: 'qp-code-in',
1384
- }}
1385
- onChange={(value) => {
1386
- if (dataInputBusinessType === 12) {
1387
- values[1] = value.map((i) => i.key);
1388
- valueNames[1] = value.map((i) => i.label || '');
1389
- } else {
1390
- values[1] = [value.key];
1391
- valueNames[1] = [value.label || ''];
1392
- }
1393
- callback(values, valueNames);
1394
- }}
1395
- getPopupContainer={() => document.body}
1396
- />
1397
- </>
1398
- );
1399
- } else {
1400
- return (
1401
- <BusinessSearchSelect
1402
- selectBusinessType="supplier2"
1403
- selectProps={{
1404
- style: styleCommon,
1405
- placeholder: '请选择供应商',
1406
- ...(dataInputBusinessType === 12
1407
- ? {
1408
- mode: 'multiple',
1409
- maxTagCount: 1,
1410
- }
1411
- : {}),
1412
- }}
1413
- disabled={disabled}
1414
- labelInValue={true}
1415
- value={dataInputBusinessType === 12 ? values : values[0]}
1416
- requestConfig={{
1417
- filterInit: 'qp-code-in',
1418
- }}
1419
- onChange={(value) => {
1420
- if (dataInputBusinessType === 12) {
1421
- values = value.map((i) => i.key);
1422
- valueNames = value.map((i) => i.label || '');
1423
- } else {
1424
- values = [value.key];
1425
- valueNames = [value.label || ''];
1426
- }
1427
- callback(values, valueNames);
1428
- }}
1429
- getPopupContainer={() => document.body}
1430
- />
1431
- );
1432
- }
1433
- }
1434
- // 客户选择器
1435
- if (dataChoiceBusinessType == 250) {
1436
- if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
1437
- return (
1438
- <>
1439
- <BusinessSearchSelect
1440
- selectBusinessType="customer2"
1441
- selectProps={{
1442
- style: styleCommon,
1443
- placeholder: '请选择客户',
1444
- ...(dataInputBusinessType === 12
1445
- ? {
1446
- mode: 'multiple',
1447
- maxTagCount: 1,
1448
- }
1449
- : {}),
1450
- }}
1451
- disabled={disabled}
1452
- labelInValue={true}
1453
- value={values[0]}
1454
- requestConfig={{
1455
- filterInit: 'qp-code-in',
1456
- }}
1457
- onChange={(value) => {
1458
- if (dataInputBusinessType === 12) {
1459
- values[0] = value.map((i) => i.key);
1460
- valueNames[0] = value.map((i) => i.label || '');
1461
- } else {
1462
- values[0] = [value.key];
1463
- valueNames[0] = [value.label || ''];
1464
- }
1465
- callback(values, valueNames);
1466
- }}
1467
- getPopupContainer={() => document.body}
1468
- />
1469
- <span>~</span>
1470
- <BusinessSearchSelect
1471
- selectBusinessType="customer2"
1472
- selectProps={{
1473
- style: styleCommon,
1474
- placeholder: '请选择客户',
1475
- ...(dataInputBusinessType === 12
1476
- ? {
1477
- mode: 'multiple',
1478
- maxTagCount: 1,
1479
- }
1480
- : {}),
1481
- }}
1482
- disabled={disabled}
1483
- labelInValue={true}
1484
- value={values[1]}
1485
- requestConfig={{
1486
- filterInit: 'qp-code-in',
1487
- }}
1488
- onChange={(value) => {
1489
- if (dataInputBusinessType === 12) {
1490
- values[1] = value.map((i) => i.key);
1491
- valueNames[1] = value.map((i) => i.label || '');
1492
- } else {
1493
- values[1] = [value.key];
1494
- valueNames[1] = [value.label || ''];
1495
- }
1496
- callback(values, valueNames);
1497
- }}
1498
- getPopupContainer={() => document.body}
1499
- />
1500
- </>
1501
- );
1502
- } else {
1503
- return (
1504
- <BusinessSearchSelect
1505
- selectBusinessType="customer2"
1506
- selectProps={{
1507
- style: styleCommon,
1508
- placeholder: '请选择客户',
1509
- ...(dataInputBusinessType === 12
1510
- ? {
1511
- mode: 'multiple',
1512
- maxTagCount: 1,
1513
- }
1514
- : {}),
1515
- }}
1516
- disabled={disabled}
1517
- labelInValue={true}
1518
- value={dataInputBusinessType === 12 ? values : values[0]}
1519
- requestConfig={{
1520
- filterInit: 'qp-code-in',
1521
- }}
1522
- onChange={(value) => {
1523
- if (dataInputBusinessType === 12) {
1524
- values = value.map((i) => i.key);
1525
- valueNames = value.map((i) => i.label || '');
1526
- } else {
1527
- values = [value.key];
1528
- valueNames = [value.label || ''];
1529
- }
1530
- callback(values, valueNames);
1531
- }}
1532
- getPopupContainer={() => document.body}
1533
- />
1534
- );
1535
- }
1536
- }
1537
- // 店铺选择器
1538
- if (dataChoiceBusinessType == 260) {
1539
- if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
1540
- return (
1541
- <>
1542
- <BusinessSearchSelect
1543
- selectBusinessType="shopFile2"
1544
- selectProps={{
1545
- style: styleCommon,
1546
- placeholder: '请选择店铺',
1547
- ...(dataInputBusinessType === 12
1548
- ? {
1549
- mode: 'multiple',
1550
- maxTagCount: 1,
1551
- }
1552
- : {}),
1553
- }}
1554
- disabled={disabled}
1555
- labelInValue={true}
1556
- value={values[0]}
1557
- requestConfig={{
1558
- filterInit: 'qp-code-in',
1559
- }}
1560
- onChange={(value) => {
1561
- if (dataInputBusinessType === 12) {
1562
- values[0] = value.map((i) => i.key);
1563
- valueNames[0] = value.map((i) => i.label || '');
1564
- } else {
1565
- values[0] = [value.key];
1566
- valueNames[0] = [value.label || ''];
1567
- }
1568
- callback(values, valueNames);
1569
- }}
1570
- getPopupContainer={() => document.body}
1571
- />
1572
- <span>~</span>
1573
- <BusinessSearchSelect
1574
- selectBusinessType="shopFile2"
1575
- selectProps={{
1576
- style: styleCommon,
1577
- placeholder: '请选择店铺',
1578
- ...(dataInputBusinessType === 12
1579
- ? {
1580
- mode: 'multiple',
1581
- maxTagCount: 1,
1582
- }
1583
- : {}),
1584
- }}
1585
- disabled={disabled}
1586
- labelInValue={true}
1587
- value={values[1]}
1588
- requestConfig={{
1589
- filterInit: 'qp-code-in',
1590
- }}
1591
- onChange={(value) => {
1592
- if (dataInputBusinessType === 12) {
1593
- values[1] = value.map((i) => i.key);
1594
- valueNames[1] = value.map((i) => i.label || '');
1595
- } else {
1596
- values[1] = [value.key];
1597
- valueNames[1] = [value.label || ''];
1598
- }
1599
- callback(values, valueNames);
1600
- }}
1601
- getPopupContainer={() => document.body}
1602
- />
1603
- </>
1604
- );
1605
- } else {
1606
- return (
1607
- <BusinessSearchSelect
1608
- selectBusinessType="shopFile2"
1609
- selectProps={{
1610
- style: styleCommon,
1611
- placeholder: '请选择店铺',
1612
- ...(dataInputBusinessType === 12
1613
- ? {
1614
- mode: 'multiple',
1615
- maxTagCount: 1,
1616
- }
1617
- : {}),
1618
- }}
1619
- disabled={disabled}
1620
- labelInValue={true}
1621
- value={dataInputBusinessType === 12 ? values : values[0]}
1622
- requestConfig={{
1623
- filterInit: 'qp-code-in',
1624
- }}
1625
- onChange={(value) => {
1626
- if (dataInputBusinessType === 12) {
1627
- values = value.map((i) => i.key);
1628
- valueNames = value.map((i) => i.label || '');
1629
- } else {
1630
- values = [value.key];
1631
- valueNames = [value.label || ''];
1632
- }
1633
- callback(values, valueNames);
1634
- }}
1635
- getPopupContainer={() => document.body}
1636
- />
1637
- );
1638
- }
1639
- }
1640
- // 员工选择器
1641
- if (dataChoiceBusinessType == 270) {
1642
- if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
1643
- return (
1644
- <>
1645
- <BusinessSearchSelect
1646
- selectBusinessType="employee2"
1647
- selectProps={{
1648
- style: styleCommon,
1649
- placeholder: '请选择员工',
1650
- ...(dataInputBusinessType === 12
1651
- ? {
1652
- mode: 'multiple',
1653
- maxTagCount: 1,
1654
- }
1655
- : {}),
1656
- }}
1657
- disabled={disabled}
1658
- labelInValue={true}
1659
- value={values[0]}
1660
- requestConfig={{
1661
- filterInit: 'qp-id-in',
1662
- }}
1663
- onChange={(value) => {
1664
- if (dataInputBusinessType === 12) {
1665
- values[0] = value.map((i) => i.key);
1666
- valueNames[0] = value.map((i) => i.label || '');
1667
- } else {
1668
- values[0] = [value.key];
1669
- valueNames[0] = [value.label || ''];
1670
- }
1671
- callback(values, valueNames);
1672
- }}
1673
- getPopupContainer={() => document.body}
1674
- />
1675
- <span>~</span>
1676
- <BusinessSearchSelect
1677
- selectBusinessType="employee2"
1678
- selectProps={{
1679
- style: styleCommon,
1680
- placeholder: '请选择员工',
1681
- ...(dataInputBusinessType === 12
1682
- ? {
1683
- mode: 'multiple',
1684
- maxTagCount: 1,
1685
- }
1686
- : {}),
1687
- }}
1688
- disabled={disabled}
1689
- labelInValue={true}
1690
- value={values[1]}
1691
- requestConfig={{
1692
- filterInit: 'qp-id-in',
1693
- }}
1694
- onChange={(value) => {
1695
- if (dataInputBusinessType === 12) {
1696
- values[1] = value.map((i) => i.key);
1697
- valueNames[1] = value.map((i) => i.label || '');
1698
- } else {
1699
- values[1] = [value.key];
1700
- valueNames[1] = [value.label || ''];
1701
- }
1702
- callback(values, valueNames);
1703
- }}
1704
- getPopupContainer={() => document.body}
1705
- />
1706
- </>
1707
- );
1708
- } else {
1709
- return (
1710
- <BusinessSearchSelect
1711
- selectBusinessType="employee2"
1712
- selectProps={{
1713
- style: styleCommon,
1714
- placeholder: '请选择员工',
1715
- ...(dataInputBusinessType === 12
1716
- ? {
1717
- mode: 'multiple',
1718
- maxTagCount: 1,
1719
- }
1720
- : {}),
1721
- }}
1722
- disabled={disabled}
1723
- labelInValue={true}
1724
- value={dataInputBusinessType === 12 ? values : values[0]}
1725
- requestConfig={{
1726
- filterInit: 'qp-id-in',
1727
- }}
1728
- onChange={(value) => {
1729
- if (dataInputBusinessType === 12) {
1730
- values = value.map((i) => i.key);
1731
- valueNames = value.map((i) => i.label || '');
1732
- } else {
1733
- values = [value.key];
1734
- valueNames = [value.label || ''];
1735
- }
1736
- callback(values, valueNames);
1737
- }}
1738
- getPopupContainer={() => document.body}
1739
- />
1740
- );
1741
- }
1742
- }
1743
- // 库存组织选择器
1744
- if (dataChoiceBusinessType == 280) {
1745
- if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
1746
- return (
1747
- <>
1748
- <BusinessTreeSearchSelect
1749
- disabled={disabled}
1750
- treeCheckable={dataInputBusinessType === 12}
1751
- businessType="stock-organization"
1752
- labelInValue={true}
1753
- value={values[0]}
1754
- style={styleCommon}
1755
- onChange={(value) => {
1756
- if (dataInputBusinessType === 12) {
1757
- values[0] = value.map((i) => i.key);
1758
- valueNames[0] = value.map((i) => i.label || '');
1759
- } else {
1760
- values[0] = [value.key];
1761
- valueNames[0] = [value.label || ''];
1762
- }
1763
- callback(values, valueNames);
1764
- }}
1765
- getPopupContainer={() => document.body}
1766
- />
1767
- <span>~</span>
1768
- <BusinessTreeSearchSelect
1769
- disabled={disabled}
1770
- treeCheckable={dataInputBusinessType === 12}
1771
- businessType="stock-organization"
1772
- labelInValue={true}
1773
- value={values[0]}
1774
- style={styleCommon}
1775
- onChange={(value) => {
1776
- if (dataInputBusinessType === 12) {
1777
- values[1] = value.map((i) => i.key);
1778
- valueNames[1] = value.map((i) => i.label || '');
1779
- } else {
1780
- values[1] = [value.key];
1781
- valueNames[1] = [value.label || ''];
1782
- }
1783
- callback(values, valueNames);
1784
- }}
1785
- getPopupContainer={() => document.body}
1786
- />
1787
- </>
1788
- );
1789
- } else {
1790
- return (
1791
- <BusinessTreeSearchSelect
1792
- disabled={disabled}
1793
- treeCheckable={dataInputBusinessType === 12}
1794
- businessType="stock-organization"
1795
- labelInValue={true}
1796
- value={values[0]}
1797
- style={styleCommon}
1798
- onChange={(value) => {
1799
- if (dataInputBusinessType === 12) {
1800
- values = value.map((i) => i.key);
1801
- valueNames = value.map((i) => i.label || '');
1802
- } else {
1803
- values = [value.key];
1804
- valueNames = [value.label || ''];
1805
- }
1806
- callback(values, valueNames);
1807
- }}
1808
- getPopupContainer={() => document.body}
1809
- />
1810
- );
1811
- }
1812
- }
1813
- // 配送方式选择器
1814
- if (dataChoiceBusinessType == 310) {
1815
- if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
1816
- return (
1817
- <>
1818
- <BusinessSearchSelect
1819
- selectBusinessType="deliveryMode"
1820
- selectProps={{
1821
- style: styleCommon,
1822
- placeholder: '请选择配送方式',
1823
- ...(dataInputBusinessType === 12
1824
- ? {
1825
- mode: 'multiple',
1826
- maxTagCount: 1,
1827
- }
1828
- : {}),
1829
- }}
1830
- disabled={disabled}
1831
- labelInValue={true}
1832
- value={values[0]}
1833
- requestConfig={{
1834
- filterInit: 'qp-code-in',
1835
- }}
1836
- onChange={(value) => {
1837
- if (dataInputBusinessType === 12) {
1838
- values[0] = value.map((i) => i.key);
1839
- valueNames[0] = value.map((i) => i.label || '');
1840
- } else {
1841
- values[0] = [value.key];
1842
- valueNames[0] = [value.label || ''];
1843
- }
1844
- callback(values, valueNames);
1845
- }}
1846
- getPopupContainer={() => document.body}
1847
- />
1848
- <span>~</span>
1849
- <BusinessSearchSelect
1850
- selectBusinessType="deliveryMode"
1851
- selectProps={{
1852
- style: styleCommon,
1853
- placeholder: '请选择配送方式',
1854
- ...(dataInputBusinessType === 12
1855
- ? {
1856
- mode: 'multiple',
1857
- maxTagCount: 1,
1858
- }
1859
- : {}),
1860
- }}
1861
- disabled={disabled}
1862
- labelInValue={true}
1863
- value={values[1]}
1864
- requestConfig={{
1865
- filterInit: 'qp-code-in',
1866
- }}
1867
- onChange={(value) => {
1868
- if (dataInputBusinessType === 12) {
1869
- values[1] = value.map((i) => i.key);
1870
- valueNames[1] = value.map((i) => i.label || '');
1871
- } else {
1872
- values[1] = [value.key];
1873
- valueNames[1] = [value.label || ''];
1874
- }
1875
- callback(values, valueNames);
1876
- }}
1877
- getPopupContainer={() => document.body}
1878
- />
1879
- </>
1880
- );
1881
- } else {
1882
- return (
1883
- <BusinessSearchSelect
1884
- selectBusinessType="deliveryMode"
1885
- selectProps={{
1886
- style: styleCommon,
1887
- placeholder: '请选择配送方式',
1888
- ...(dataInputBusinessType === 12
1889
- ? {
1890
- mode: 'multiple',
1891
- maxTagCount: 1,
1892
- }
1893
- : {}),
1894
- }}
1895
- disabled={disabled}
1896
- labelInValue={true}
1897
- value={dataInputBusinessType === 12 ? values : values[0]}
1898
- requestConfig={{
1899
- filterInit: 'qp-code-in',
1900
- }}
1901
- onChange={(value) => {
1902
- if (dataInputBusinessType === 12) {
1903
- values = value.map((i) => i.key);
1904
- valueNames = value.map((i) => i.label || '');
1905
- } else {
1906
- values = [value.key];
1907
- valueNames = [value.label || ''];
1908
- }
1909
- callback(values, valueNames);
1910
- }}
1911
- getPopupContainer={() => document.body}
1912
- />
1913
- );
1914
- }
1915
- }
1916
- } else {
1917
- if (
1918
- dataTypeCode == 22 ||
1919
- dataTypeCode == 21 ||
1920
- dataTypeCode == 24 ||
1921
- dataTypeCode == 23
1922
- ) {
1923
- //数值22, 字符串21, 布尔类型24, long23
1924
- if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
1925
- return (
1926
- <>
1927
- <Input
1928
- defaultValue={values[0]}
1929
- disabled={disabled}
1930
- style={styleCommon}
1931
- onBlur={(e) => {
1932
- values[0] = e.target.value;
1933
- valueNames[0] = e.target.value;
1934
- callback(values, valueNames);
1935
- }}
1936
- />
1937
- <span>~</span>
1938
- <Input
1939
- defaultValue={values[1]}
1940
- disabled={disabled}
1941
- style={styleCommon}
1942
- onBlur={(e) => {
1943
- values[1] = e.target.value;
1944
- valueNames[1] = e.target.value;
1945
- callback(values, valueNames);
1946
- }}
1947
- />
1948
- </>
1949
- );
1950
- } else {
1951
- return (
1952
- <Input
1953
- defaultValue={values.join(',')}
1954
- disabled={disabled}
1955
- style={styleCommon}
1956
- onBlur={(e) => {
1957
- values = e.target.value.split(',');
1958
- valueNames = e.target.value.split(',');
1959
- callback(values, valueNames);
1960
- }}
1961
- />
1962
- );
1963
- }
1964
- } else if (dataTypeCode == 41) {
1965
- // 日期41
1966
- if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
1967
- return (
1968
- <RangePicker
1969
- // showTime
1970
- disabled={disabled}
1971
- style={{ width: customerWidth || '300px' }}
1972
- format={dataTypeCode == 41 ? dateFormat : fullDateFormat}
1973
- value={[
1974
- values[0] ? moment(values[0]) : '',
1975
- values[1] ? moment(values[1]) : '',
1976
- ]}
1977
- onChange={(dates, dateStrings) => {
1978
- // 业务产品要求时间范围取值固定00:00:00-23:59:59,有问题请找产品业务
1979
- let dateStringFormat = [];
1980
- if (dataTypeCode == 41) {
1981
- dateStringFormat[0] = dateStrings[0]
1982
- ? moment(dateStrings[0]).format('YYYY-MM-DD')
1983
- : '';
1984
- dateStringFormat[1] = dateStrings[1]
1985
- ? moment(dateStrings[1]).format('YYYY-MM-DD')
1986
- : '';
1987
- } else {
1988
- dateStringFormat[0] = dateStrings[0]
1989
- ? moment(dateStrings[0]).format('YYYY-MM-DD 00:00:00')
1990
- : '';
1991
- dateStringFormat[1] = dateStrings[1]
1992
- ? moment(dateStrings[1]).format('YYYY-MM-DD 23:59:59')
1993
- : '';
1994
- }
1995
- values = [...dateStringFormat];
1996
- valueNames = [...dateStringFormat];
1997
- callback(values, valueNames);
1998
- }}
1999
- />
2000
- );
2001
- } else {
2002
- return (
2003
- <>
2004
- <DatePicker
2005
- format={dataTypeCode == 41 ? dateFormat : fullDateFormat}
2006
- disabled={disabled}
2007
- style={{ width: customerWidth || '300px' }}
2008
- value={values[0] ? moment(values[0]) : ''}
2009
- onChange={(date, dateString) => {
2010
- values[0] = dateString;
2011
- valueNames[0] = dateString;
2012
- callback(values, valueNames);
2013
- }}
2014
- />
2015
- </>
2016
- );
2017
- }
2018
- } else if (dataTypeCode == 40) {
2019
- // 时间40
2020
- if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
2021
- return (
2022
- <>
2023
- <TimePicker
2024
- key="1"
2025
- disabled={disabled}
2026
- value={values[0] ? moment(values[0]) : ''}
2027
- style={styleCommon}
2028
- onChange={(time, timeString) => {
2029
- values[0] = timeString;
2030
- valueNames[0] = timeString;
2031
- callback(values, valueNames);
2032
- }}
2033
- />
2034
- <span>~</span>
2035
- <TimePicker
2036
- key="2"
2037
- disabled={disabled}
2038
- value={values[1] ? moment(values[1]) : ''}
2039
- style={styleCommon}
2040
- onChange={(time, timeString) => {
2041
- values[1] = timeString;
2042
- valueNames[1] = timeString;
2043
- callback(values, valueNames);
2044
- }}
2045
- />
2046
- </>
2047
- );
2048
- } else {
2049
- return (
2050
- <TimePicker
2051
- defaultValue={values[0] ? moment(values[0]) : ''}
2052
- disabled={disabled}
2053
- style={styleCommon}
2054
- onChange={(time, timeString) => {
2055
- values[0] = timeString;
2056
- valueNames[0] = timeString;
2057
- callback(values, valueNames);
2058
- }}
2059
- />
2060
- );
2061
- }
2062
- }
2063
- }
2064
- return '';
2065
- };
2066
-
2067
- render() {
2068
- return (
2069
- <div style={{ marginLeft: '10px' }} className={styles.rule_field_style}>
2070
- {this.renderConditionField()}
2071
- </div>
2072
- );
2073
- }
2074
- }
1
+ import React, { Component } from 'react';
2
+ import { Select, Input, InputNumber, DatePicker, TimePicker } from 'antd';
3
+ import styles from './index.less';
4
+ import { getRegularThresholdRange } from './services';
5
+ import moment from 'moment';
6
+ import { handleError, judgeIsEmpty } from '../../../utils/utils';
7
+ import { queryIdentityInfo, findChangedThresholdQuery, setParams } from './util';
8
+ import { request as SulaRequest } from 'bssula';
9
+ import { stringify } from 'querystring';
10
+ import {
11
+ BusinessSearchSelect,
12
+ BusinessTreeSearchSelect,
13
+ BsCascader
14
+ } from '../../../index';
15
+ const { RangePicker } = DatePicker;
16
+
17
+ export default class RuleField extends Component {
18
+ constructor(props) {
19
+ super(props);
20
+ this.state = {
21
+ selectOperation: '',
22
+ dataTypeCode: '',
23
+ dataChoiceBusinessType: '',
24
+ dataInputBusinessType: '',
25
+ fieldValues: [],
26
+ thresholdQuery: {},
27
+ thresholdList: [],
28
+ options: [],
29
+ };
30
+ }
31
+
32
+ componentDidMount() {
33
+ const {
34
+ selectOperation,
35
+ dataTypeCode,
36
+ dataChoiceBusinessType,
37
+ dataInputBusinessType,
38
+ options,
39
+ values,
40
+ initialThresholdQuery,
41
+ queryIdentify,
42
+ propertyCode,
43
+ queryIdentifyType,
44
+ } = this.props;
45
+ this.setState(
46
+ {
47
+ selectOperation,
48
+ thresholdQuery: initialThresholdQuery
49
+ ? {
50
+ ...initialThresholdQuery,
51
+ }
52
+ : {},
53
+ dataTypeCode,
54
+ dataChoiceBusinessType,
55
+ dataInputBusinessType,
56
+ fieldValues: [...values],
57
+ options,
58
+ },
59
+ () => {
60
+ !judgeIsEmpty(queryIdentify) &&
61
+ this.getRegularThresholdRange(
62
+ queryIdentify,
63
+ propertyCode,
64
+ queryIdentifyType,
65
+ );
66
+ },
67
+ );
68
+ window.addEventListener('testEvent', this.eventHandle);
69
+ }
70
+
71
+ eventHandle = (obj) => {
72
+ const { thresholdQuery } = this.state;
73
+ const { queryIdentify, propertyCode, queryIdentifyType } = this.props;
74
+ this.setState(
75
+ {
76
+ thresholdQuery: {
77
+ ...thresholdQuery,
78
+ ...obj.data,
79
+ },
80
+ },
81
+ () => {
82
+ this.getRegularThresholdRange(
83
+ queryIdentify,
84
+ propertyCode,
85
+ queryIdentifyType,
86
+ );
87
+ },
88
+ );
89
+ };
90
+
91
+ componentWillUnmount() {
92
+ window.removeEventListener('testEvent', this.eventHandle);
93
+ }
94
+
95
+ componentWillReceiveProps(nextProps) {
96
+ if (nextProps.selectOperation != this.props.selectOperation) {
97
+ this.setState({
98
+ selectOperation: nextProps.selectOperation,
99
+ });
100
+ }
101
+ if (nextProps.dataTypeCode != this.props.dataTypeCode) {
102
+ this.setState({
103
+ dataTypeCode: nextProps.dataTypeCode,
104
+ });
105
+ }
106
+ if (nextProps.dataChoiceBusinessType != this.props.dataChoiceBusinessType) {
107
+ this.setState({
108
+ dataChoiceBusinessType: nextProps.dataChoiceBusinessType,
109
+ });
110
+ }
111
+ if (nextProps.dataInputBusinessType != this.props.dataInputBusinessType) {
112
+ this.setState({
113
+ dataInputBusinessType: nextProps.dataInputBusinessType,
114
+ });
115
+ }
116
+ // if (nextProps.selectOperation != this.props.selectOperation) {
117
+ // this.setState({
118
+ // options: nextProps.options
119
+ // })
120
+ // }
121
+ if (
122
+ nextProps.queryIdentify &&
123
+ nextProps.queryIdentify != this.props.queryIdentify
124
+ ) {
125
+ this.getRegularThresholdRange(
126
+ nextProps.queryIdentify,
127
+ nextProps.propertyCode,
128
+ nextProps.queryIdentifyType,
129
+ );
130
+ }
131
+
132
+ if (
133
+ JSON.stringify(nextProps.initialThresholdQuery) !=
134
+ JSON.stringify(this.props.initialThresholdQuery)
135
+ ) {
136
+ console.log(
137
+ findChangedThresholdQuery(
138
+ this.props.initialThresholdQuery,
139
+ nextProps.initialThresholdQuery,
140
+ ),
141
+ );
142
+ let changedPropsVal = findChangedThresholdQuery(
143
+ this.props.initialThresholdQuery,
144
+ nextProps.initialThresholdQuery,
145
+ );
146
+ this.setState(
147
+ {
148
+ thresholdQuery: {
149
+ ...nextProps.initialThresholdQuery,
150
+ },
151
+ },
152
+ () => {
153
+ if (changedPropsVal.indexOf(nextProps.propertyCode) > -1) {
154
+ this.getRegularThresholdRange(
155
+ nextProps.queryIdentify,
156
+ nextProps.propertyCode,
157
+ nextProps.queryIdentifyType,
158
+ );
159
+ }
160
+ },
161
+ );
162
+ }
163
+ }
164
+
165
+ //规则对象属性枚举值查询处理 queryIdentify有值是表示该属性有枚举选择
166
+ getRegularThresholdRange = async (
167
+ queryIdentify,
168
+ propertyCode,
169
+ queryIdentifyType,
170
+ ) => {
171
+ if (!queryIdentify) return;
172
+ const { thresholdQuery } = this.state;
173
+ let extraRequestUrl = '';
174
+ let querParams = setParams(propertyCode, thresholdQuery);
175
+ if (queryIdentityInfo.find((item) => item.identity == propertyCode)) {
176
+ //判断查询属性枚举时有没有必传参数,如果必传参数没有值则不调用查询接口
177
+ let needQueryList = queryIdentityInfo
178
+ .find((item) => item.identity == propertyCode)
179
+ .queryParam.filter((item) => item.isRequired)
180
+ .map((item) => item.queryKey);
181
+ if (
182
+ needQueryList.some(
183
+ (item) => !querParams[item] || !querParams[item].length,
184
+ )
185
+ ) {
186
+ return;
187
+ }
188
+ extraRequestUrl =
189
+ queryIdentityInfo.find((item) => item.identity == propertyCode)
190
+ .requestUrl || '';
191
+ }
192
+ if (queryIdentifyType === 'dictCodeIdentify') {
193
+ extraRequestUrl = `bscDictItem/selectDictItemsByDictCode`; // 字典接口
194
+ querParams = { dictCode: queryIdentify };
195
+ } else if (queryIdentifyType === 'dynamicDictCodeIdentify') {
196
+ extraRequestUrl = `dictDynamicItem/getDynamicData/${queryIdentify}`; // 字典接口
197
+ // querParams = { dictCode: queryIdentify }
198
+ }
199
+
200
+ if (extraRequestUrl) {
201
+ if (queryIdentify == 'maintain_area_code') {
202
+ extraRequestUrl = `/basic/${extraRequestUrl}${
203
+ querParams.memberCardCode
204
+ }?${stringify(querParams)}`;
205
+ } else if (queryIdentifyType == 'dictCodeIdentify') {
206
+ extraRequestUrl = `/basic/${extraRequestUrl}?${stringify(querParams)}`;
207
+ } else if (queryIdentifyType == 'dynamicDictCodeIdentify') {
208
+ extraRequestUrl = `/basic/${extraRequestUrl}`;
209
+ }
210
+
211
+ SulaRequest({
212
+ url: extraRequestUrl,
213
+ method: 'get',
214
+ converter: (res) => {
215
+ if (handleError(res)) {
216
+ let handleData = res?.data || [];
217
+ if (queryIdentifyType === 'dictCodeIdentify') {
218
+ handleData = handleData?.length
219
+ ? handleData.map((i) => ({
220
+ code: i.dictItemCode,
221
+ name: i.dictItemName,
222
+ }))
223
+ : [];
224
+ }
225
+ if (queryIdentifyType === 'dynamicDictCodeIdentify') {
226
+ handleData = handleData?.length
227
+ ? handleData.map((i) => ({
228
+ code: i.code.toString(),
229
+ name: i.name,
230
+ }))
231
+ : [];
232
+ }
233
+ this.setState({
234
+ thresholdList: handleData,
235
+ });
236
+ }
237
+ return handleData;
238
+ },
239
+ });
240
+ } else {
241
+ if (queryIdentifyType == 'objectPropertyListIdentify') {
242
+ this.setState({
243
+ thresholdList: queryIdentify,
244
+ });
245
+ } else if (queryIdentifyType == 'objectPropertyCodeIdentify') {
246
+ // TODO待处理
247
+ this.setState({
248
+ thresholdList: [],
249
+ });
250
+ } else {
251
+ querParams.queryIdentify = queryIdentify;
252
+ let res = await getRegularThresholdRange(querParams);
253
+ if (handleError(res)) {
254
+ this.setState({
255
+ thresholdList: res?.data || [],
256
+ });
257
+ }
258
+ }
259
+ }
260
+ };
261
+
262
+ renderConditionField = () => {
263
+ let {
264
+ selectOperation,
265
+ dataTypeCode,
266
+ dataChoiceBusinessType,
267
+ dataInputBusinessType,
268
+ options,
269
+ values,
270
+ valueNames,
271
+ callback,
272
+ queryIdentify,
273
+ disabled,
274
+ customerWidth,
275
+ } = this.props;
276
+ const { thresholdList } = this.state;
277
+ const dateFormat = 'YYYY-MM-DD';
278
+ const fullDateFormat = 'YYYY-MM-DD HH:mm:ss';
279
+ const styleCommon = {
280
+ width: customerWidth || '150px',
281
+ };
282
+ if (!selectOperation) return <Input disabled style={styleCommon}></Input>;
283
+ const SET_TYPE = ['in', 'nin', 'cn', 'ncn']; //集合类型
284
+ const INTERVAL_TYPE = ['be', 'bed', 'nbe', 'nbed', 'ber', 'bel']; //区间类型
285
+ const IS_KONG = ['en']; // 为空
286
+ if (IS_KONG.indexOf(selectOperation) > -1) {
287
+ return '';
288
+ }
289
+ // queryIdentify有值是表示该属性有枚举选择
290
+ if (!judgeIsEmpty(queryIdentify)) {
291
+ if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
292
+ return (
293
+ <>
294
+ <Select
295
+ disabled={disabled}
296
+ showSearch
297
+ filterOption={(input, option) =>
298
+ option.props.children
299
+ ?.toLowerCase()
300
+ .indexOf(input.toLowerCase()) >= 0
301
+ }
302
+ onChange={(value, option) => {
303
+ values[0] = value;
304
+ valueNames[0] = option?.props?.children || '';
305
+ callback(values, valueNames);
306
+ }}
307
+ value={values[0]}
308
+ style={styleCommon}
309
+ >
310
+ {thresholdList.map((item) => (
311
+ <Select.Option value={item.code}>{item.name}</Select.Option>
312
+ ))}
313
+ </Select>
314
+ <span>~</span>
315
+ <Select
316
+ value={values[1]}
317
+ disabled={disabled}
318
+ showSearch
319
+ filterOption={(input, option) =>
320
+ option.props.children
321
+ ?.toLowerCase()
322
+ .indexOf(input.toLowerCase()) >= 0
323
+ }
324
+ onChange={(value, option) => {
325
+ values[1] = value;
326
+ valueNames[1] = option?.props?.children || '';
327
+ callback(values, valueNames);
328
+ }}
329
+ style={styleCommon}
330
+ >
331
+ {thresholdList.map((item) => (
332
+ <Select.Option value={item.code}>{item.name}</Select.Option>
333
+ ))}
334
+ </Select>
335
+ </>
336
+ );
337
+ } else {
338
+ return (
339
+ <Select
340
+ disabled={disabled}
341
+ showSearch
342
+ filterOption={(input, option) =>
343
+ option.props.children
344
+ ?.toLowerCase()
345
+ .indexOf(input.toLowerCase()) >= 0
346
+ }
347
+ onChange={(value, option) => {
348
+ if (SET_TYPE.indexOf(selectOperation) > -1) {
349
+ let valueNames1 = Array.isArray(option)
350
+ ? option.map((item) => item?.props?.children || '')
351
+ : [];
352
+ values = [...value];
353
+ valueNames = [...valueNames1];
354
+ } else {
355
+ values = [value];
356
+ valueNames = [option?.props?.children || ''];
357
+ }
358
+ callback(values, valueNames);
359
+ }}
360
+ value={SET_TYPE.indexOf(selectOperation) > -1 ? values : values[0]}
361
+ style={styleCommon}
362
+ mode={
363
+ SET_TYPE.indexOf(selectOperation) > -1 ? 'multiple' : 'default'
364
+ }
365
+ >
366
+ {thresholdList.map((item) => (
367
+ <Select.Option value={item.code}>{item.name}</Select.Option>
368
+ ))}
369
+ </Select>
370
+ );
371
+ }
372
+ } else if (dataInputBusinessType == 11 || dataInputBusinessType == 12) {
373
+ // 11 单选 12 多选
374
+ // 物理仓
375
+ if (dataChoiceBusinessType == 110) {
376
+ if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
377
+ return (
378
+ <>
379
+ <BusinessSearchSelect
380
+ selectBusinessType="physicalWarehouse"
381
+ selectProps={{
382
+ style: styleCommon,
383
+ placeholder: '请选择物理仓',
384
+ ...(dataInputBusinessType === 12
385
+ ? {
386
+ mode: 'multiple',
387
+ maxTagCount: 1,
388
+ }
389
+ : {}),
390
+ }}
391
+ disabled={disabled}
392
+ labelInValue={true}
393
+ value={values[0]}
394
+ requestConfig={{
395
+ mappingValueField: 'physicalWarehouseCode',
396
+ filterInit: 'qp-physicalWarehouseCode-in',
397
+ }}
398
+ onChange={(value) => {
399
+ if (dataInputBusinessType === 12) {
400
+ values[0] = value.map((i) => i.key);
401
+ valueNames[0] = value.map((i) => i.label || '');
402
+ } else {
403
+ values[0] = [value.key];
404
+ valueNames[0] = [value.label || ''];
405
+ }
406
+ callback(values, valueNames);
407
+ }}
408
+ getPopupContainer={() => document.body}
409
+ />
410
+ <span>~</span>
411
+ <BusinessSearchSelect
412
+ selectBusinessType="physicalWarehouse"
413
+ selectProps={{
414
+ style: styleCommon,
415
+ placeholder: '请选择物理仓',
416
+ ...(dataInputBusinessType === 12
417
+ ? {
418
+ mode: 'multiple',
419
+ maxTagCount: 1,
420
+ }
421
+ : {}),
422
+ }}
423
+ disabled={disabled}
424
+ labelInValue={true}
425
+ value={values[1]}
426
+ requestConfig={{
427
+ mappingValueField: 'physicalWarehouseCode',
428
+ filterInit: 'qp-physicalWarehouseCode-in',
429
+ }}
430
+ onChange={(value) => {
431
+ if (dataInputBusinessType === 12) {
432
+ values[1] = value.map((i) => i.key);
433
+ valueNames[1] = value.map((i) => i.label || '');
434
+ } else {
435
+ values[1] = [value.key];
436
+ valueNames[1] = [value.label || ''];
437
+ }
438
+ callback(values, valueNames);
439
+ }}
440
+ getPopupContainer={() => document.body}
441
+ />
442
+ </>
443
+ );
444
+ } else {
445
+ const currentValue = dataInputBusinessType === 12 ?
446
+ values?.map((s,vIndex)=> ({key: s, label: valueNames[vIndex]}))||[]
447
+ : values[0]&&{key:values[0],label:valueNames[0]}||{}
448
+ return (
449
+ <BusinessSearchSelect
450
+ selectBusinessType="physicalWarehouse"
451
+ selectProps={{
452
+ style: styleCommon,
453
+ placeholder: '请选择物理仓',
454
+ ...(dataInputBusinessType === 12
455
+ ? {
456
+ mode: 'multiple',
457
+ maxTagCount: 1,
458
+ }
459
+ : {}),
460
+ }}
461
+ disabled={disabled}
462
+ labelInValue={true}
463
+ value={currentValue}
464
+ requestConfig={{
465
+ mappingValueField: 'physicalWarehouseCode',
466
+ filterInit: 'qp-physicalWarehouseCode-in',
467
+ }}
468
+ onChange={(value) => {
469
+ if (dataInputBusinessType === 12) {
470
+ values = value.map((i) => i.key)||[];
471
+ valueNames = value.map((i) => i.label || '')||[];
472
+ } else {
473
+ values = value?.key?[value.key]:[];
474
+ valueNames = value?.label?[value.label]:[];
475
+ }
476
+ callback(values, valueNames);
477
+ }}
478
+ getPopupContainer={() => document.body}
479
+ />
480
+ );
481
+ }
482
+ }
483
+ // 逻辑仓
484
+ if (dataChoiceBusinessType == 120) {
485
+ if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
486
+ return (
487
+ <>
488
+ <BusinessSearchSelect
489
+ selectBusinessType="realWarehouse"
490
+ selectProps={{
491
+ style: styleCommon,
492
+ placeholder: '请选择逻辑仓',
493
+ ...(dataInputBusinessType === 12
494
+ ? {
495
+ mode: 'multiple',
496
+ maxTagCount: 1,
497
+ }
498
+ : {}),
499
+ }}
500
+ disabled={disabled}
501
+ labelInValue={true}
502
+ value={values[0]}
503
+ requestConfig={{
504
+ mappingValueField: 'realWarehouseCode',
505
+ filterInit: 'qp-realWarehouseCode-in',
506
+ }}
507
+ onChange={(value) => {
508
+ if (dataInputBusinessType === 12) {
509
+ values[0] = value.map((i) => i.key);
510
+ valueNames[0] = value.map((i) => i.label || '');
511
+ } else {
512
+ values[0] = [value.key];
513
+ valueNames[0] = [value.label || ''];
514
+ }
515
+ callback(values, valueNames);
516
+ }}
517
+ getPopupContainer={() => document.body}
518
+ />
519
+ <span>~</span>
520
+ <BusinessSearchSelect
521
+ selectBusinessType="realWarehouse"
522
+ selectProps={{
523
+ style: styleCommon,
524
+ placeholder: '请选择逻辑仓',
525
+ ...(dataInputBusinessType === 12
526
+ ? {
527
+ mode: 'multiple',
528
+ maxTagCount: 1,
529
+ }
530
+ : {}),
531
+ }}
532
+ disabled={disabled}
533
+ labelInValue={true}
534
+ value={values[1]}
535
+ requestConfig={{
536
+ mappingValueField: 'realWarehouseCode',
537
+ filterInit: 'qp-realWarehouseCode-in',
538
+ }}
539
+ onChange={(value) => {
540
+ if (dataInputBusinessType === 12) {
541
+ values[1] = value.map((i) => i.key);
542
+ valueNames[1] = value.map((i) => i.label || '');
543
+ } else {
544
+ values[1] = [value.key];
545
+ valueNames[1] = [value.label || ''];
546
+ }
547
+ callback(values, valueNames);
548
+ }}
549
+ getPopupContainer={() => document.body}
550
+ />
551
+ </>
552
+ );
553
+ } else {
554
+ const currentValue = dataInputBusinessType === 12 ?
555
+ values?.map((s,vIndex)=> ({key: s, label: valueNames[vIndex]}))||[]
556
+ : values[0]&&{key:values[0],label:valueNames[0]}||{}
557
+ return (
558
+ <BusinessSearchSelect
559
+ selectBusinessType="realWarehouse"
560
+ selectProps={{
561
+ style: styleCommon,
562
+ placeholder: '请选择逻辑仓',
563
+ ...(dataInputBusinessType === 12
564
+ ? {
565
+ mode: 'multiple',
566
+ maxTagCount: 1,
567
+ }
568
+ : {}),
569
+ }}
570
+ disabled={disabled}
571
+ labelInValue={true}
572
+ value={currentValue}
573
+ requestConfig={{
574
+ mappingValueField: 'realWarehouseCode',
575
+ filterInit: 'qp-realWarehouseCode-in',
576
+ }}
577
+ onChange={(value) => {
578
+ if (dataInputBusinessType === 12) {
579
+ values = value.map((i) => i.key)||[];
580
+ valueNames = value.map((i) => i.label || '')||[];
581
+ } else {
582
+ values = value?.key?[value.key]:[];
583
+ valueNames = value?.label?[value.label]:[];
584
+ }
585
+ callback(values, valueNames);
586
+ }}
587
+ getPopupContainer={() => document.body}
588
+ />
589
+ );
590
+ }
591
+ }
592
+ // 虚拟仓
593
+ if (dataChoiceBusinessType == 130) {
594
+ if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
595
+ return (
596
+ <>
597
+ <BusinessSearchSelect
598
+ selectBusinessType="virtualWarehouse"
599
+ selectProps={{
600
+ style: styleCommon,
601
+ placeholder: '请选择虚拟仓',
602
+ ...(dataInputBusinessType === 12
603
+ ? {
604
+ mode: 'multiple',
605
+ maxTagCount: 1,
606
+ }
607
+ : {}),
608
+ }}
609
+ disabled={disabled}
610
+ labelInValue={true}
611
+ value={values[0]}
612
+ requestConfig={{
613
+ mappingValueField: 'virtualWarehouseCode',
614
+ filterInit: 'qp-virtualWarehouseCode-in',
615
+ }}
616
+ onChange={(value) => {
617
+ if (dataInputBusinessType === 12) {
618
+ values[0] = value.map((i) => i.key);
619
+ valueNames[0] = value.map((i) => i.label || '');
620
+ } else {
621
+ values[0] = [value.key];
622
+ valueNames[0] = [value.label || ''];
623
+ }
624
+ callback(values, valueNames);
625
+ }}
626
+ getPopupContainer={() => document.body}
627
+ />
628
+ <span>~</span>
629
+ <BusinessSearchSelect
630
+ selectBusinessType="virtualWarehouse"
631
+ selectProps={{
632
+ style: styleCommon,
633
+ placeholder: '请选择虚拟仓',
634
+ ...(dataInputBusinessType === 12
635
+ ? {
636
+ mode: 'multiple',
637
+ maxTagCount: 1,
638
+ }
639
+ : {}),
640
+ }}
641
+ disabled={disabled}
642
+ labelInValue={true}
643
+ value={values[1]}
644
+ requestConfig={{
645
+ mappingValueField: 'virtualWarehouseCode',
646
+ filterInit: 'qp-virtualWarehouseCode-in',
647
+ }}
648
+ onChange={(value) => {
649
+ if (dataInputBusinessType === 12) {
650
+ values[1] = value.map((i) => i.key);
651
+ valueNames[1] = value.map((i) => i.label || '');
652
+ } else {
653
+ values[1] = [value.key];
654
+ valueNames[1] = [value.label || ''];
655
+ }
656
+ callback(values, valueNames);
657
+ }}
658
+ getPopupContainer={() => document.body}
659
+ />
660
+ </>
661
+ );
662
+ } else {
663
+ const currentValue = dataInputBusinessType === 12 ?
664
+ values?.map((s,vIndex)=> ({key: s, label: valueNames[vIndex]}))||[]
665
+ : values[0]&&{key:values[0],label:valueNames[0]}||{}
666
+ return (
667
+ <BusinessSearchSelect
668
+ selectBusinessType="virtualWarehouse"
669
+ selectProps={{
670
+ style: styleCommon,
671
+ placeholder: '请选择虚拟仓',
672
+ ...(dataInputBusinessType === 12
673
+ ? {
674
+ mode: 'multiple',
675
+ maxTagCount: 1,
676
+ }
677
+ : {}),
678
+ }}
679
+ disabled={disabled}
680
+ labelInValue={true}
681
+ value={currentValue}
682
+ requestConfig={{
683
+ mappingValueField: 'virtualWarehouseCode',
684
+ filterInit: 'qp-virtualWarehouseCode-in',
685
+ }}
686
+ onChange={(value) => {
687
+ if (dataInputBusinessType === 12) {
688
+ values = value.map((i) => i.key)||[];
689
+ valueNames = value.map((i) => i.label || '')||[];
690
+ } else {
691
+ values = value?.key?[value.key]:[];
692
+ valueNames = value?.label?[value.label]:[];
693
+ }
694
+ callback(values, valueNames);
695
+ }}
696
+ getPopupContainer={() => document.body}
697
+ />
698
+ );
699
+ }
700
+ }
701
+ // 渠道仓
702
+ if (dataChoiceBusinessType == 140) {
703
+ if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
704
+ return (
705
+ <>
706
+ <BusinessSearchSelect
707
+ selectBusinessType="channelWarehouse"
708
+ selectProps={{
709
+ style: styleCommon,
710
+ placeholder: '请选择渠道仓',
711
+ ...(dataInputBusinessType === 12
712
+ ? {
713
+ mode: 'multiple',
714
+ maxTagCount: 1,
715
+ }
716
+ : {}),
717
+ }}
718
+ disabled={disabled}
719
+ labelInValue={true}
720
+ value={values[0]}
721
+ requestConfig={{
722
+ mappingValueField: 'channelWarehouseCode',
723
+ filterInit: 'qp-channelWarehouseCode-in',
724
+ }}
725
+ onChange={(value) => {
726
+ if (dataInputBusinessType === 12) {
727
+ values[0] = value.map((i) => i.key);
728
+ valueNames[0] = value.map((i) => i.label || '');
729
+ } else {
730
+ values[0] = [value.key];
731
+ valueNames[0] = [value.label || ''];
732
+ }
733
+ callback(values, valueNames);
734
+ }}
735
+ getPopupContainer={() => document.body}
736
+ />
737
+ <span>~</span>
738
+ <BusinessSearchSelect
739
+ selectBusinessType="channelWarehouse"
740
+ selectProps={{
741
+ style: styleCommon,
742
+ placeholder: '请选择渠道仓',
743
+ ...(dataInputBusinessType === 12
744
+ ? {
745
+ mode: 'multiple',
746
+ maxTagCount: 1,
747
+ }
748
+ : {}),
749
+ }}
750
+ disabled={disabled}
751
+ labelInValue={true}
752
+ value={values[1]}
753
+ requestConfig={{
754
+ mappingValueField: 'channelWarehouseCode',
755
+ filterInit: 'qp-channelWarehouseCode-in',
756
+ }}
757
+ onChange={(value) => {
758
+ if (dataInputBusinessType === 12) {
759
+ values[1] = value.map((i) => i.key);
760
+ valueNames[1] = value.map((i) => i.label || '');
761
+ } else {
762
+ values[1] = [value.key];
763
+ valueNames[1] = [value.label || ''];
764
+ }
765
+ callback(values, valueNames);
766
+ }}
767
+ getPopupContainer={() => document.body}
768
+ />
769
+ </>
770
+ );
771
+ } else {
772
+ const currentValue = dataInputBusinessType === 12 ?
773
+ values?.map((s,vIndex)=> ({key: s, label: valueNames[vIndex]}))||[]
774
+ : values[0]&&{key:values[0],label:valueNames[0]}||{}
775
+ return (
776
+ <BusinessSearchSelect
777
+ selectBusinessType="channelWarehouse"
778
+ selectProps={{
779
+ style: styleCommon,
780
+ placeholder: '请选择渠道仓',
781
+ ...(dataInputBusinessType === 12
782
+ ? {
783
+ mode: 'multiple',
784
+ maxTagCount: 1,
785
+ }
786
+ : {}),
787
+ }}
788
+ disabled={disabled}
789
+ labelInValue={true}
790
+ value={currentValue}
791
+ requestConfig={{
792
+ mappingValueField: 'channelWarehouseCode',
793
+ filterInit: 'qp-channelWarehouseCode-in',
794
+ }}
795
+ onChange={(value) => {
796
+ if (dataInputBusinessType === 12) {
797
+ values = value.map((i) => i.key)||[];
798
+ valueNames = value.map((i) => i.label || '')||[];
799
+ } else {
800
+ values = value?.key?[value.key]:[];
801
+ valueNames = value?.label?[value.label]:[];
802
+ }
803
+ callback(values, valueNames);
804
+ }}
805
+ getPopupContainer={() => document.body}
806
+ />
807
+ );
808
+ }
809
+ }
810
+ // 商品SPU选择器
811
+ if (dataChoiceBusinessType == 150) {
812
+ if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
813
+ return (
814
+ <>
815
+ <BusinessSearchSelect
816
+ selectBusinessType="spuCommodity"
817
+ selectProps={{
818
+ style: styleCommon,
819
+ placeholder: '请选择SPU',
820
+ ...(dataInputBusinessType === 12
821
+ ? {
822
+ mode: 'multiple',
823
+ maxTagCount: 1,
824
+ }
825
+ : {}),
826
+ }}
827
+ disabled={disabled}
828
+ labelInValue={true}
829
+ value={values[0]}
830
+ requestConfig={{
831
+ filterInit: 'qp-itemCode-in',
832
+ }}
833
+ onChange={(value) => {
834
+ if (dataInputBusinessType === 12) {
835
+ values[0] = value.map((i) => i.key);
836
+ valueNames[0] = value.map((i) => i.label || '');
837
+ } else {
838
+ values[0] = [value.key];
839
+ valueNames[0] = [value.label || ''];
840
+ }
841
+ callback(values, valueNames);
842
+ }}
843
+ getPopupContainer={() => document.body}
844
+ />
845
+ <span>~</span>
846
+ <BusinessSearchSelect
847
+ selectBusinessType="spuCommodity"
848
+ selectProps={{
849
+ style: styleCommon,
850
+ placeholder: '请选择SPU',
851
+ ...(dataInputBusinessType === 12
852
+ ? {
853
+ mode: 'multiple',
854
+ maxTagCount: 1,
855
+ }
856
+ : {}),
857
+ }}
858
+ disabled={disabled}
859
+ labelInValue={true}
860
+ value={values[1]}
861
+ requestConfig={{
862
+ filterInit: 'qp-itemCode-in',
863
+ }}
864
+ onChange={(value) => {
865
+ if (dataInputBusinessType === 12) {
866
+ values[1] = value.map((i) => i.key);
867
+ valueNames[1] = value.map((i) => i.label || '');
868
+ } else {
869
+ values[1] = [value.key];
870
+ valueNames[1] = [value.label || ''];
871
+ }
872
+ callback(values, valueNames);
873
+ }}
874
+ getPopupContainer={() => document.body}
875
+ />
876
+ </>
877
+ );
878
+ } else {
879
+ const currentValue = dataInputBusinessType === 12 ?
880
+ values?.map((s,vIndex)=> ({key: s, label: valueNames[vIndex]}))||[]
881
+ : values[0]&&{key:values[0],label:valueNames[0]}||{}
882
+ return (
883
+ <BusinessSearchSelect
884
+ selectBusinessType="spuCommodity"
885
+ selectProps={{
886
+ style: styleCommon,
887
+ placeholder: '请选择SPU',
888
+ ...(dataInputBusinessType === 12
889
+ ? {
890
+ mode: 'multiple',
891
+ maxTagCount: 1,
892
+ }
893
+ : {}),
894
+ }}
895
+ disabled={disabled}
896
+ labelInValue={true}
897
+ value={currentValue}
898
+ requestConfig={{
899
+ filterInit: 'qp-itemCode-in',
900
+ }}
901
+ onChange={(value) => {
902
+ if (dataInputBusinessType === 12) {
903
+ values = value.map((i) => i.key)||[];
904
+ valueNames = value.map((i) => i.label || '')||[];
905
+ } else {
906
+ values = value?.key?[value.key]:[];
907
+ valueNames = value?.label?[value.label]:[];
908
+ }
909
+ callback(values, valueNames);
910
+ }}
911
+ getPopupContainer={() => document.body}
912
+ />
913
+ );
914
+ }
915
+ }
916
+ // 商品SKU选择器
917
+ if (dataChoiceBusinessType == 160) {
918
+ if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
919
+ return (
920
+ <>
921
+ <BusinessSearchSelect
922
+ selectBusinessType="skuCommodity"
923
+ selectProps={{
924
+ style: styleCommon,
925
+ placeholder: '请选择商品',
926
+ ...(dataInputBusinessType === 12
927
+ ? {
928
+ mode: 'multiple',
929
+ maxTagCount: 1,
930
+ }
931
+ : {}),
932
+ }}
933
+ disabled={disabled}
934
+ labelInValue={true}
935
+ value={values[0]}
936
+ requestConfig={{
937
+ filterInit: 'qp-skuCode-in',
938
+ }}
939
+ onChange={(value) => {
940
+ if (dataInputBusinessType === 12) {
941
+ values[0] = value.map((i) => i.key);
942
+ valueNames[0] = value.map((i) => i.label || '');
943
+ } else {
944
+ values[0] = [value.key];
945
+ valueNames[0] = [value.label || ''];
946
+ }
947
+ callback(values, valueNames);
948
+ }}
949
+ getPopupContainer={() => document.body}
950
+ />
951
+ <span>~</span>
952
+ <BusinessSearchSelect
953
+ selectBusinessType="skuCommodity"
954
+ selectProps={{
955
+ style: styleCommon,
956
+ placeholder: '请选择商品',
957
+ ...(dataInputBusinessType === 12
958
+ ? {
959
+ mode: 'multiple',
960
+ maxTagCount: 1,
961
+ }
962
+ : {}),
963
+ }}
964
+ disabled={disabled}
965
+ labelInValue={true}
966
+ value={values[1]}
967
+ requestConfig={{
968
+ filterInit: 'qp-skuCode-in',
969
+ }}
970
+ onChange={(value) => {
971
+ if (dataInputBusinessType === 12) {
972
+ values[1] = value.map((i) => i.key);
973
+ valueNames[1] = value.map((i) => i.label || '');
974
+ } else {
975
+ values[1] = [value.key];
976
+ valueNames[1] = [value.label || ''];
977
+ }
978
+ callback(values, valueNames);
979
+ }}
980
+ getPopupContainer={() => document.body}
981
+ />
982
+ </>
983
+ );
984
+ } else {
985
+ const currentValue = dataInputBusinessType === 12 ?
986
+ values?.map((s,vIndex)=> ({key: s, label: valueNames[vIndex]}))||[]
987
+ : values[0]&&{key:values[0],label:valueNames[0]}||{}
988
+ return (
989
+ <BusinessSearchSelect
990
+ selectBusinessType="skuCommodity"
991
+ selectProps={{
992
+ style: styleCommon,
993
+ placeholder: '请选择商品',
994
+ ...(dataInputBusinessType === 12
995
+ ? {
996
+ mode: 'multiple',
997
+ maxTagCount: 1,
998
+ }
999
+ : {}),
1000
+ }}
1001
+ disabled={disabled}
1002
+ labelInValue={true}
1003
+ value={currentValue}
1004
+ requestConfig={{
1005
+ filterInit: 'qp-skuCode-in',
1006
+ }}
1007
+ onChange={(value) => {
1008
+ if (dataInputBusinessType === 12) {
1009
+ values = value.map((i) => i.key)||[];
1010
+ valueNames = value.map((i) => i.label || '')||[];
1011
+ } else {
1012
+ values = value?.key?[value.key]:[];
1013
+ valueNames = value?.label?[value.label]:[];
1014
+ }
1015
+ callback(values, valueNames);
1016
+ }}
1017
+ getPopupContainer={() => document.body}
1018
+ />
1019
+ );
1020
+ }
1021
+ }
1022
+ // 省市区
1023
+ if (dataChoiceBusinessType == 190) {
1024
+ if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
1025
+ return (
1026
+ <>
1027
+ <BsCascader
1028
+ disabled={disabled}
1029
+ isAll={true}
1030
+ needNameAndCode={true}
1031
+ notChangeOnSelect={true}
1032
+ initRequestSource={async () => {
1033
+ return await SulaRequest({
1034
+ url: '/basic/bscArea/getBscAreaList?qp-level-eq=1&qp-pid-eq=100000',
1035
+ method: 'get',
1036
+ converter: ({ data }) => {
1037
+ const handleData =
1038
+ data && data[0]
1039
+ ? data?.map((item) => {
1040
+ return {
1041
+ text: item.name,
1042
+ value: item.id,
1043
+ level: item.level,
1044
+ id: item.id,
1045
+ };
1046
+ })
1047
+ : [];
1048
+ return handleData;
1049
+ },
1050
+ });
1051
+ }}
1052
+ style={{ width: 240 }}
1053
+ value={{ PCDName: valueNames[0] || [] }}
1054
+ onChange={(value) => {
1055
+ values[0] = value.PCDCode;
1056
+ valueNames[0] = value.PCDName;
1057
+ callback(values, valueNames);
1058
+ }}
1059
+ getPopupContainer={() => document.body}
1060
+ />
1061
+ <span>~</span>
1062
+ <BsCascader
1063
+ disabled={disabled}
1064
+ onlyCode={true}
1065
+ isAll={true}
1066
+ needNameAndCode={true}
1067
+ notChangeOnSelect={true}
1068
+ initRequestSource={async () => {
1069
+ return await SulaRequest({
1070
+ url: '/basic/bscArea/getBscAreaList?qp-level-eq=1&qp-pid-eq=100000',
1071
+ method: 'get',
1072
+ converter: ({ data }) => {
1073
+ const handleData =
1074
+ data && data[0]
1075
+ ? data?.map((item) => {
1076
+ return {
1077
+ text: item.name,
1078
+ value: item.id,
1079
+ level: item.level,
1080
+ id: item.id,
1081
+ };
1082
+ })
1083
+ : [];
1084
+ return handleData;
1085
+ },
1086
+ });
1087
+ }}
1088
+ style={{ width: 240 }}
1089
+ value={{ PCDName: valueNames[1] || [] }}
1090
+ onChange={(value) => {
1091
+ values[1] = value.PCDCode;
1092
+ valueNames[1] = value.PCDName;
1093
+ callback(values, valueNames);
1094
+ }}
1095
+ getPopupContainer={() => document.body}
1096
+ />
1097
+ </>
1098
+ );
1099
+ } else {
1100
+ return (
1101
+ <BsCascader
1102
+ disabled={disabled}
1103
+ onlyCode={true}
1104
+ isAll={true}
1105
+ needNameAndCode={true}
1106
+ notChangeOnSelect={true}
1107
+ initRequestSource={async () => {
1108
+ return await SulaRequest({
1109
+ url: '/basic/bscArea/getBscAreaList?qp-level-eq=1&qp-pid-eq=100000',
1110
+ method: 'get',
1111
+ converter: ({ data }) => {
1112
+ const handleData =
1113
+ data && data[0]
1114
+ ? data?.map((item) => {
1115
+ return {
1116
+ text: item.name,
1117
+ value: item.id,
1118
+ level: item.level,
1119
+ id: item.id,
1120
+ };
1121
+ })
1122
+ : [];
1123
+ return handleData;
1124
+ },
1125
+ });
1126
+ }}
1127
+ style={{ width: 240 }}
1128
+ value={{ PCDName: valueNames || [] }}
1129
+ onChange={(value) => {
1130
+ values = value.PCDCode;
1131
+ valueNames = value.PCDName;
1132
+ callback(values, valueNames);
1133
+ }}
1134
+ getPopupContainer={() => document.body}
1135
+ />
1136
+ );
1137
+ }
1138
+ }
1139
+ // 行政组织选择器
1140
+ if (dataChoiceBusinessType == 210) {
1141
+ if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
1142
+ return (
1143
+ <>
1144
+ <BusinessTreeSearchSelect
1145
+ disabled={disabled}
1146
+ treeCheckable={dataInputBusinessType === 12}
1147
+ businessType="department"
1148
+ labelInValue={true}
1149
+ value={values[0]}
1150
+ style={styleCommon}
1151
+ onChange={(value) => {
1152
+ if (dataInputBusinessType === 12) {
1153
+ values[0] = value.map((i) => i.key);
1154
+ valueNames[0] = value.map((i) => i.label || '');
1155
+ } else {
1156
+ values[0] = [value.key];
1157
+ valueNames[0] = [value.label || ''];
1158
+ }
1159
+ callback(values, valueNames);
1160
+ }}
1161
+ getPopupContainer={() => document.body}
1162
+ />
1163
+ <span>~</span>
1164
+ <BusinessTreeSearchSelect
1165
+ disabled={disabled}
1166
+ treeCheckable={dataInputBusinessType === 12}
1167
+ businessType="department"
1168
+ labelInValue={true}
1169
+ value={values[0]}
1170
+ style={styleCommon}
1171
+ onChange={(value) => {
1172
+ if (dataInputBusinessType === 12) {
1173
+ values[1] = value.map((i) => i.key);
1174
+ valueNames[1] = value.map((i) => i.label || '');
1175
+ } else {
1176
+ values[1] = [value.key];
1177
+ valueNames[1] = [value.label || ''];
1178
+ }
1179
+ callback(values, valueNames);
1180
+ }}
1181
+ getPopupContainer={() => document.body}
1182
+ />
1183
+ </>
1184
+ );
1185
+ } else {
1186
+ return (
1187
+ <BusinessTreeSearchSelect
1188
+ disabled={disabled}
1189
+ treeCheckable={dataInputBusinessType === 12}
1190
+ businessType="department"
1191
+ labelInValue={true}
1192
+ value={values[0]}
1193
+ style={styleCommon}
1194
+ onChange={(value) => {
1195
+ if (dataInputBusinessType === 12) {
1196
+ values = value.map((i) => i.key)||[];
1197
+ valueNames = value.map((i) => i.label || '')||[];
1198
+ } else {
1199
+ values = value?.key?[value.key]:[];
1200
+ valueNames = value?.label?[value.label]:[];
1201
+ }
1202
+ callback(values, valueNames);
1203
+ }}
1204
+ getPopupContainer={() => document.body}
1205
+ />
1206
+ );
1207
+ }
1208
+ }
1209
+ // 采购组织选择器
1210
+ if (dataChoiceBusinessType == 220) {
1211
+ if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
1212
+ return (
1213
+ <>
1214
+ <BusinessTreeSearchSelect
1215
+ disabled={disabled}
1216
+ treeCheckable={dataInputBusinessType === 12}
1217
+ businessType="purchase-organization"
1218
+ labelInValue={true}
1219
+ value={values[0]}
1220
+ style={styleCommon}
1221
+ onChange={(value) => {
1222
+ if (dataInputBusinessType === 12) {
1223
+ values[0] = value.map((i) => i.key);
1224
+ valueNames[0] = value.map((i) => i.label || '');
1225
+ } else {
1226
+ values[0] = [value.key];
1227
+ valueNames[0] = [value.label || ''];
1228
+ }
1229
+ callback(values, valueNames);
1230
+ }}
1231
+ getPopupContainer={() => document.body}
1232
+ />
1233
+ <span>~</span>
1234
+ <BusinessTreeSearchSelect
1235
+ disabled={disabled}
1236
+ treeCheckable={dataInputBusinessType === 12}
1237
+ businessType="purchase-organization"
1238
+ labelInValue={true}
1239
+ value={values[0]}
1240
+ style={styleCommon}
1241
+ onChange={(value) => {
1242
+ if (dataInputBusinessType === 12) {
1243
+ values[1] = value.map((i) => i.key);
1244
+ valueNames[1] = value.map((i) => i.label || '');
1245
+ } else {
1246
+ values[1] = [value.key];
1247
+ valueNames[1] = [value.label || ''];
1248
+ }
1249
+ callback(values, valueNames);
1250
+ }}
1251
+ getPopupContainer={() => document.body}
1252
+ />
1253
+ </>
1254
+ );
1255
+ } else {
1256
+ return (
1257
+ <BusinessTreeSearchSelect
1258
+ disabled={disabled}
1259
+ treeCheckable={dataInputBusinessType === 12}
1260
+ businessType="purchase-organization"
1261
+ labelInValue={true}
1262
+ value={values[0]}
1263
+ style={styleCommon}
1264
+ onChange={(value) => {
1265
+ if (dataInputBusinessType === 12) {
1266
+ values = value.map((i) => i.key)||[];
1267
+ valueNames = value.map((i) => i.label || '')||[];
1268
+ } else {
1269
+ values = value?.key?[value.key]:[];
1270
+ valueNames = value?.label?[value.label]:[];
1271
+ }
1272
+ callback(values, valueNames);
1273
+ }}
1274
+ getPopupContainer={() => document.body}
1275
+ />
1276
+ );
1277
+ }
1278
+ }
1279
+ // 销售组织选择器
1280
+ if (dataChoiceBusinessType == 230) {
1281
+ if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
1282
+ return (
1283
+ <>
1284
+ <BusinessTreeSearchSelect
1285
+ disabled={disabled}
1286
+ treeCheckable={dataInputBusinessType === 12}
1287
+ businessType="sales-organization"
1288
+ labelInValue={true}
1289
+ value={values[0]}
1290
+ style={styleCommon}
1291
+ onChange={(value) => {
1292
+ if (dataInputBusinessType === 12) {
1293
+ values[0] = value.map((i) => i.key);
1294
+ valueNames[0] = value.map((i) => i.label || '');
1295
+ } else {
1296
+ values[0] = [value.key];
1297
+ valueNames[0] = [value.label || ''];
1298
+ }
1299
+ callback(values, valueNames);
1300
+ }}
1301
+ getPopupContainer={() => document.body}
1302
+ />
1303
+ <span>~</span>
1304
+ <BusinessTreeSearchSelect
1305
+ disabled={disabled}
1306
+ treeCheckable={dataInputBusinessType === 12}
1307
+ businessType="sales-organization"
1308
+ labelInValue={true}
1309
+ value={values[0]}
1310
+ style={styleCommon}
1311
+ onChange={(value) => {
1312
+ if (dataInputBusinessType === 12) {
1313
+ values[1] = value.map((i) => i.key);
1314
+ valueNames[1] = value.map((i) => i.label || '');
1315
+ } else {
1316
+ values[1] = [value.key];
1317
+ valueNames[1] = [value.label || ''];
1318
+ }
1319
+ callback(values, valueNames);
1320
+ }}
1321
+ getPopupContainer={() => document.body}
1322
+ />
1323
+ </>
1324
+ );
1325
+ } else {
1326
+ return (
1327
+ <BusinessTreeSearchSelect
1328
+ disabled={disabled}
1329
+ treeCheckable={dataInputBusinessType === 12}
1330
+ businessType="sales-organization"
1331
+ labelInValue={true}
1332
+ value={values[0]}
1333
+ style={styleCommon}
1334
+ onChange={(value) => {
1335
+ if (dataInputBusinessType === 12) {
1336
+ values = value.map((i) => i.key)||[];
1337
+ valueNames = value.map((i) => i.label || '')||[];
1338
+ } else {
1339
+ values = value?.key?[value.key]:[];
1340
+ valueNames = value?.label?[value.label]:[];
1341
+ }
1342
+ callback(values, valueNames);
1343
+ }}
1344
+ getPopupContainer={() => document.body}
1345
+ />
1346
+ );
1347
+ }
1348
+ }
1349
+ // 供应商选择器
1350
+ if (dataChoiceBusinessType == 240) {
1351
+ if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
1352
+ return (
1353
+ <>
1354
+ <BusinessSearchSelect
1355
+ selectBusinessType="supplier2"
1356
+ selectProps={{
1357
+ style: styleCommon,
1358
+ placeholder: '请选择供应商',
1359
+ ...(dataInputBusinessType === 12
1360
+ ? {
1361
+ mode: 'multiple',
1362
+ maxTagCount: 1,
1363
+ }
1364
+ : {}),
1365
+ }}
1366
+ disabled={disabled}
1367
+ labelInValue={true}
1368
+ value={values[0]}
1369
+ requestConfig={{
1370
+ filterInit: 'qp-code-in',
1371
+ }}
1372
+ onChange={(value) => {
1373
+ if (dataInputBusinessType === 12) {
1374
+ values[0] = value.map((i) => i.key);
1375
+ valueNames[0] = value.map((i) => i.label || '');
1376
+ } else {
1377
+ values[0] = [value.key];
1378
+ valueNames[0] = [value.label || ''];
1379
+ }
1380
+ callback(values, valueNames);
1381
+ }}
1382
+ getPopupContainer={() => document.body}
1383
+ />
1384
+ <span>~</span>
1385
+ <BusinessSearchSelect
1386
+ selectBusinessType="supplier2"
1387
+ selectProps={{
1388
+ style: styleCommon,
1389
+ placeholder: '请选择供应商',
1390
+ ...(dataInputBusinessType === 12
1391
+ ? {
1392
+ mode: 'multiple',
1393
+ maxTagCount: 1,
1394
+ }
1395
+ : {}),
1396
+ }}
1397
+ disabled={disabled}
1398
+ labelInValue={true}
1399
+ value={values[1]}
1400
+ requestConfig={{
1401
+ filterInit: 'qp-code-in',
1402
+ }}
1403
+ onChange={(value) => {
1404
+ if (dataInputBusinessType === 12) {
1405
+ values[1] = value.map((i) => i.key);
1406
+ valueNames[1] = value.map((i) => i.label || '');
1407
+ } else {
1408
+ values[1] = [value.key];
1409
+ valueNames[1] = [value.label || ''];
1410
+ }
1411
+ callback(values, valueNames);
1412
+ }}
1413
+ getPopupContainer={() => document.body}
1414
+ />
1415
+ </>
1416
+ );
1417
+ } else {
1418
+ const currentValue = dataInputBusinessType === 12 ?
1419
+ values?.map((s,vIndex)=> ({key: s, label: valueNames[vIndex]}))||[]
1420
+ : values[0]&&{key:values[0],label:valueNames[0]}||{}
1421
+ return (
1422
+ <BusinessSearchSelect
1423
+ selectBusinessType="supplier2"
1424
+ selectProps={{
1425
+ style: styleCommon,
1426
+ placeholder: '请选择供应商',
1427
+ ...(dataInputBusinessType === 12
1428
+ ? {
1429
+ mode: 'multiple',
1430
+ maxTagCount: 1,
1431
+ }
1432
+ : {}),
1433
+ }}
1434
+ disabled={disabled}
1435
+ labelInValue={true}
1436
+ value={currentValue}
1437
+ requestConfig={{
1438
+ filterInit: 'qp-code-in',
1439
+ }}
1440
+ onChange={(value) => {
1441
+ if (dataInputBusinessType === 12) {
1442
+ values = value.map((i) => i.key)||[];
1443
+ valueNames = value.map((i) => i.label || '')||[];
1444
+ } else {
1445
+ values = value?.key?[value.key]:[];
1446
+ valueNames = value?.label?[value.label]:[];
1447
+ }
1448
+ callback(values, valueNames);
1449
+ }}
1450
+ getPopupContainer={() => document.body}
1451
+ />
1452
+ );
1453
+ }
1454
+ }
1455
+ // 客户选择器
1456
+ if (dataChoiceBusinessType == 250) {
1457
+ if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
1458
+ return (
1459
+ <>
1460
+ <BusinessSearchSelect
1461
+ selectBusinessType="customer2"
1462
+ selectProps={{
1463
+ style: styleCommon,
1464
+ placeholder: '请选择客户',
1465
+ ...(dataInputBusinessType === 12
1466
+ ? {
1467
+ mode: 'multiple',
1468
+ maxTagCount: 1,
1469
+ }
1470
+ : {}),
1471
+ }}
1472
+ disabled={disabled}
1473
+ labelInValue={true}
1474
+ value={values[0]}
1475
+ requestConfig={{
1476
+ filterInit: 'qp-code-in',
1477
+ }}
1478
+ onChange={(value) => {
1479
+ if (dataInputBusinessType === 12) {
1480
+ values[0] = value.map((i) => i.key);
1481
+ valueNames[0] = value.map((i) => i.label || '');
1482
+ } else {
1483
+ values[0] = [value.key];
1484
+ valueNames[0] = [value.label || ''];
1485
+ }
1486
+ callback(values, valueNames);
1487
+ }}
1488
+ getPopupContainer={() => document.body}
1489
+ />
1490
+ <span>~</span>
1491
+ <BusinessSearchSelect
1492
+ selectBusinessType="customer2"
1493
+ selectProps={{
1494
+ style: styleCommon,
1495
+ placeholder: '请选择客户',
1496
+ ...(dataInputBusinessType === 12
1497
+ ? {
1498
+ mode: 'multiple',
1499
+ maxTagCount: 1,
1500
+ }
1501
+ : {}),
1502
+ }}
1503
+ disabled={disabled}
1504
+ labelInValue={true}
1505
+ value={values[1]}
1506
+ requestConfig={{
1507
+ filterInit: 'qp-code-in',
1508
+ }}
1509
+ onChange={(value) => {
1510
+ if (dataInputBusinessType === 12) {
1511
+ values[1] = value.map((i) => i.key);
1512
+ valueNames[1] = value.map((i) => i.label || '');
1513
+ } else {
1514
+ values[1] = [value.key];
1515
+ valueNames[1] = [value.label || ''];
1516
+ }
1517
+ callback(values, valueNames);
1518
+ }}
1519
+ getPopupContainer={() => document.body}
1520
+ />
1521
+ </>
1522
+ );
1523
+ } else {
1524
+ const currentValue = dataInputBusinessType === 12 ?
1525
+ values?.map((s,vIndex)=> ({key: s, label: valueNames[vIndex]}))||[]
1526
+ : values[0]&&{key:values[0],label:valueNames[0]}||{}
1527
+ return (
1528
+ <BusinessSearchSelect
1529
+ selectBusinessType="customer2"
1530
+ selectProps={{
1531
+ style: styleCommon,
1532
+ placeholder: '请选择客户',
1533
+ ...(dataInputBusinessType === 12
1534
+ ? {
1535
+ mode: 'multiple',
1536
+ maxTagCount: 1,
1537
+ }
1538
+ : {}),
1539
+ }}
1540
+ disabled={disabled}
1541
+ labelInValue={true}
1542
+ value={currentValue}
1543
+ requestConfig={{
1544
+ filterInit: 'qp-code-in',
1545
+ }}
1546
+ onChange={(value) => {
1547
+ if (dataInputBusinessType === 12) {
1548
+ values = value.map((i) => i.key)||[];
1549
+ valueNames = value.map((i) => i.label || '')||[];
1550
+ } else {
1551
+ values = value?.key?[value.key]:[];
1552
+ valueNames = value?.label?[value.label]:[];
1553
+ }
1554
+ callback(values, valueNames);
1555
+ }}
1556
+ getPopupContainer={() => document.body}
1557
+ />
1558
+ );
1559
+ }
1560
+ }
1561
+ // 店铺选择器
1562
+ if (dataChoiceBusinessType == 260) {
1563
+ if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
1564
+ return (
1565
+ <>
1566
+ <BusinessSearchSelect
1567
+ selectBusinessType="shopFile2"
1568
+ selectProps={{
1569
+ style: styleCommon,
1570
+ placeholder: '请选择店铺',
1571
+ ...(dataInputBusinessType === 12
1572
+ ? {
1573
+ mode: 'multiple',
1574
+ maxTagCount: 1,
1575
+ }
1576
+ : {}),
1577
+ }}
1578
+ disabled={disabled}
1579
+ labelInValue={true}
1580
+ value={values[0]}
1581
+ requestConfig={{
1582
+ filterInit: 'qp-code-in',
1583
+ }}
1584
+ onChange={(value) => {
1585
+ if (dataInputBusinessType === 12) {
1586
+ values[0] = value.map((i) => i.key);
1587
+ valueNames[0] = value.map((i) => i.label || '');
1588
+ } else {
1589
+ values[0] = [value.key];
1590
+ valueNames[0] = [value.label || ''];
1591
+ }
1592
+ callback(values, valueNames);
1593
+ }}
1594
+ getPopupContainer={() => document.body}
1595
+ />
1596
+ <span>~</span>
1597
+ <BusinessSearchSelect
1598
+ selectBusinessType="shopFile2"
1599
+ selectProps={{
1600
+ style: styleCommon,
1601
+ placeholder: '请选择店铺',
1602
+ ...(dataInputBusinessType === 12
1603
+ ? {
1604
+ mode: 'multiple',
1605
+ maxTagCount: 1,
1606
+ }
1607
+ : {}),
1608
+ }}
1609
+ disabled={disabled}
1610
+ labelInValue={true}
1611
+ value={values[1]}
1612
+ requestConfig={{
1613
+ filterInit: 'qp-code-in',
1614
+ }}
1615
+ onChange={(value) => {
1616
+ if (dataInputBusinessType === 12) {
1617
+ values[1] = value.map((i) => i.key);
1618
+ valueNames[1] = value.map((i) => i.label || '');
1619
+ } else {
1620
+ values[1] = [value.key];
1621
+ valueNames[1] = [value.label || ''];
1622
+ }
1623
+ callback(values, valueNames);
1624
+ }}
1625
+ getPopupContainer={() => document.body}
1626
+ />
1627
+ </>
1628
+ );
1629
+ } else {
1630
+ const currentValue = dataInputBusinessType === 12 ?
1631
+ values?.map((s,vIndex)=> ({key: s, label: valueNames[vIndex]}))||[]
1632
+ : values[0]&&{key:values[0],label:valueNames[0]}||{}
1633
+ return (
1634
+ <BusinessSearchSelect
1635
+ selectBusinessType="shopFile2"
1636
+ selectProps={{
1637
+ style: styleCommon,
1638
+ placeholder: '请选择店铺',
1639
+ ...(dataInputBusinessType === 12
1640
+ ? {
1641
+ mode: 'multiple',
1642
+ maxTagCount: 1,
1643
+ }
1644
+ : {}),
1645
+ }}
1646
+ disabled={disabled}
1647
+ labelInValue={true}
1648
+ value={currentValue}
1649
+ requestConfig={{
1650
+ filterInit: 'qp-code-in',
1651
+ }}
1652
+ onChange={(value) => {
1653
+ if (dataInputBusinessType === 12) {
1654
+ values = value.map((i) => i.key)||[];
1655
+ valueNames = value.map((i) => i.label || '')||[];
1656
+ } else {
1657
+ values = value?.key?[value.key]:[];
1658
+ valueNames = value?.label?[value.label]:[];
1659
+ }
1660
+ callback(values, valueNames);
1661
+ }}
1662
+ getPopupContainer={() => document.body}
1663
+ />
1664
+ );
1665
+ }
1666
+ }
1667
+ // 员工选择器
1668
+ if (dataChoiceBusinessType == 270) {
1669
+ if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
1670
+ return (
1671
+ <>
1672
+ <BusinessSearchSelect
1673
+ selectBusinessType="employee2"
1674
+ selectProps={{
1675
+ style: styleCommon,
1676
+ placeholder: '请选择员工',
1677
+ ...(dataInputBusinessType === 12
1678
+ ? {
1679
+ mode: 'multiple',
1680
+ maxTagCount: 1,
1681
+ }
1682
+ : {}),
1683
+ }}
1684
+ disabled={disabled}
1685
+ labelInValue={true}
1686
+ value={values[0]}
1687
+ requestConfig={{
1688
+ filterInit: 'qp-id-in',
1689
+ }}
1690
+ onChange={(value) => {
1691
+ if (dataInputBusinessType === 12) {
1692
+ values[0] = value.map((i) => i.key);
1693
+ valueNames[0] = value.map((i) => i.label || '');
1694
+ } else {
1695
+ values[0] = [value.key];
1696
+ valueNames[0] = [value.label || ''];
1697
+ }
1698
+ callback(values, valueNames);
1699
+ }}
1700
+ getPopupContainer={() => document.body}
1701
+ />
1702
+ <span>~</span>
1703
+ <BusinessSearchSelect
1704
+ selectBusinessType="employee2"
1705
+ selectProps={{
1706
+ style: styleCommon,
1707
+ placeholder: '请选择员工',
1708
+ ...(dataInputBusinessType === 12
1709
+ ? {
1710
+ mode: 'multiple',
1711
+ maxTagCount: 1,
1712
+ }
1713
+ : {}),
1714
+ }}
1715
+ disabled={disabled}
1716
+ labelInValue={true}
1717
+ value={values[1]}
1718
+ requestConfig={{
1719
+ filterInit: 'qp-id-in',
1720
+ }}
1721
+ onChange={(value) => {
1722
+ if (dataInputBusinessType === 12) {
1723
+ values[1] = value.map((i) => i.key);
1724
+ valueNames[1] = value.map((i) => i.label || '');
1725
+ } else {
1726
+ values[1] = [value.key];
1727
+ valueNames[1] = [value.label || ''];
1728
+ }
1729
+ callback(values, valueNames);
1730
+ }}
1731
+ getPopupContainer={() => document.body}
1732
+ />
1733
+ </>
1734
+ );
1735
+ } else {
1736
+ const currentValue = dataInputBusinessType === 12 ?
1737
+ values?.map((s,vIndex)=> ({key: s, label: valueNames[vIndex]}))||[]
1738
+ : values[0]&&{key:values[0],label:valueNames[0]}||{}
1739
+ return (
1740
+ <BusinessSearchSelect
1741
+ selectBusinessType="employee2"
1742
+ selectProps={{
1743
+ style: styleCommon,
1744
+ placeholder: '请选择员工',
1745
+ ...(dataInputBusinessType === 12
1746
+ ? {
1747
+ mode: 'multiple',
1748
+ maxTagCount: 1,
1749
+ }
1750
+ : {}),
1751
+ }}
1752
+ disabled={disabled}
1753
+ labelInValue={true}
1754
+ value={currentValue}
1755
+ requestConfig={{
1756
+ filterInit: 'qp-id-in',
1757
+ }}
1758
+ onChange={(value) => {
1759
+ if (dataInputBusinessType === 12) {
1760
+ values = value.map((i) => i.key)||[];
1761
+ valueNames = value.map((i) => i.label || '')||[];
1762
+ } else {
1763
+ values = value?.key?[value.key]:[];
1764
+ valueNames = value?.label?[value.label]:[];
1765
+ }
1766
+ callback(values, valueNames);
1767
+ }}
1768
+ getPopupContainer={() => document.body}
1769
+ />
1770
+ );
1771
+ }
1772
+ }
1773
+ // 库存组织选择器
1774
+ if (dataChoiceBusinessType == 280) {
1775
+ if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
1776
+ return (
1777
+ <>
1778
+ <BusinessTreeSearchSelect
1779
+ disabled={disabled}
1780
+ treeCheckable={dataInputBusinessType === 12}
1781
+ businessType="stock-organization"
1782
+ labelInValue={true}
1783
+ value={values[0]}
1784
+ style={styleCommon}
1785
+ onChange={(value) => {
1786
+ if (dataInputBusinessType === 12) {
1787
+ values[0] = value.map((i) => i.key);
1788
+ valueNames[0] = value.map((i) => i.label || '');
1789
+ } else {
1790
+ values[0] = [value.key];
1791
+ valueNames[0] = [value.label || ''];
1792
+ }
1793
+ callback(values, valueNames);
1794
+ }}
1795
+ getPopupContainer={() => document.body}
1796
+ />
1797
+ <span>~</span>
1798
+ <BusinessTreeSearchSelect
1799
+ disabled={disabled}
1800
+ treeCheckable={dataInputBusinessType === 12}
1801
+ businessType="stock-organization"
1802
+ labelInValue={true}
1803
+ value={values[0]}
1804
+ style={styleCommon}
1805
+ onChange={(value) => {
1806
+ if (dataInputBusinessType === 12) {
1807
+ values[1] = value.map((i) => i.key);
1808
+ valueNames[1] = value.map((i) => i.label || '');
1809
+ } else {
1810
+ values[1] = [value.key];
1811
+ valueNames[1] = [value.label || ''];
1812
+ }
1813
+ callback(values, valueNames);
1814
+ }}
1815
+ getPopupContainer={() => document.body}
1816
+ />
1817
+ </>
1818
+ );
1819
+ } else {
1820
+ return (
1821
+ <BusinessTreeSearchSelect
1822
+ disabled={disabled}
1823
+ treeCheckable={dataInputBusinessType === 12}
1824
+ businessType="stock-organization"
1825
+ labelInValue={true}
1826
+ value={values[0]}
1827
+ style={styleCommon}
1828
+ onChange={(value) => {
1829
+ if (dataInputBusinessType === 12) {
1830
+ values = value.map((i) => i.key)||[];
1831
+ valueNames = value.map((i) => i.label || '')||[];
1832
+ } else {
1833
+ values = value?.key?[value.key]:[];
1834
+ valueNames = value?.label?[value.label]:[];
1835
+ }
1836
+ callback(values, valueNames);
1837
+ }}
1838
+ getPopupContainer={() => document.body}
1839
+ />
1840
+ );
1841
+ }
1842
+ }
1843
+ // 配送方式选择器
1844
+ if (dataChoiceBusinessType == 310) {
1845
+ if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
1846
+ return (
1847
+ <>
1848
+ <BusinessSearchSelect
1849
+ selectBusinessType="deliveryMode"
1850
+ selectProps={{
1851
+ style: styleCommon,
1852
+ placeholder: '请选择配送方式',
1853
+ ...(dataInputBusinessType === 12
1854
+ ? {
1855
+ mode: 'multiple',
1856
+ maxTagCount: 1,
1857
+ }
1858
+ : {}),
1859
+ }}
1860
+ disabled={disabled}
1861
+ labelInValue={true}
1862
+ value={values[0]}
1863
+ requestConfig={{
1864
+ filterInit: 'qp-code-in',
1865
+ }}
1866
+ onChange={(value) => {
1867
+ if (dataInputBusinessType === 12) {
1868
+ values[0] = value.map((i) => i.key);
1869
+ valueNames[0] = value.map((i) => i.label || '');
1870
+ } else {
1871
+ values[0] = [value.key];
1872
+ valueNames[0] = [value.label || ''];
1873
+ }
1874
+ callback(values, valueNames);
1875
+ }}
1876
+ getPopupContainer={() => document.body}
1877
+ />
1878
+ <span>~</span>
1879
+ <BusinessSearchSelect
1880
+ selectBusinessType="deliveryMode"
1881
+ selectProps={{
1882
+ style: styleCommon,
1883
+ placeholder: '请选择配送方式',
1884
+ ...(dataInputBusinessType === 12
1885
+ ? {
1886
+ mode: 'multiple',
1887
+ maxTagCount: 1,
1888
+ }
1889
+ : {}),
1890
+ }}
1891
+ disabled={disabled}
1892
+ labelInValue={true}
1893
+ value={values[1]}
1894
+ requestConfig={{
1895
+ filterInit: 'qp-code-in',
1896
+ }}
1897
+ onChange={(value) => {
1898
+ if (dataInputBusinessType === 12) {
1899
+ values[1] = value.map((i) => i.key);
1900
+ valueNames[1] = value.map((i) => i.label || '');
1901
+ } else {
1902
+ values[1] = [value.key];
1903
+ valueNames[1] = [value.label || ''];
1904
+ }
1905
+ callback(values, valueNames);
1906
+ }}
1907
+ getPopupContainer={() => document.body}
1908
+ />
1909
+ </>
1910
+ );
1911
+ } else {
1912
+ const currentValue = dataInputBusinessType === 12 ?
1913
+ values?.map((s,vIndex)=> ({key: s, label: valueNames[vIndex]}))||[]
1914
+ : values[0]&&{key:values[0],label:valueNames[0]}||{}
1915
+ return (
1916
+ <BusinessSearchSelect
1917
+ selectBusinessType="deliveryMode"
1918
+ selectProps={{
1919
+ style: styleCommon,
1920
+ placeholder: '请选择配送方式',
1921
+ ...(dataInputBusinessType === 12
1922
+ ? {
1923
+ mode: 'multiple',
1924
+ maxTagCount: 1,
1925
+ }
1926
+ : {}),
1927
+ }}
1928
+ disabled={disabled}
1929
+ labelInValue={true}
1930
+ value={currentValue}
1931
+ requestConfig={{
1932
+ filterInit: 'qp-code-in',
1933
+ }}
1934
+ onChange={(value) => {
1935
+ if (dataInputBusinessType === 12) {
1936
+ values = value.map((i) => i.key)||[];
1937
+ valueNames = value.map((i) => i.label || '')||[];
1938
+ } else {
1939
+ values = value?.key?[value.key]:[];
1940
+ valueNames = value?.label?[value.label]:[];
1941
+ }
1942
+ callback(values, valueNames);
1943
+ }}
1944
+ getPopupContainer={() => document.body}
1945
+ />
1946
+ );
1947
+ }
1948
+ }
1949
+ } else {
1950
+ if (
1951
+ dataTypeCode == 22 ||
1952
+ dataTypeCode == 21 ||
1953
+ dataTypeCode == 24 ||
1954
+ dataTypeCode == 23
1955
+ ) {
1956
+ //数值22, 字符串21, 布尔类型24, long23
1957
+ if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
1958
+ return (
1959
+ <>
1960
+ <Input
1961
+ defaultValue={values[0]}
1962
+ disabled={disabled}
1963
+ style={styleCommon}
1964
+ onBlur={(e) => {
1965
+ values[0] = e.target.value;
1966
+ valueNames[0] = e.target.value;
1967
+ callback(values, valueNames);
1968
+ }}
1969
+ />
1970
+ <span>~</span>
1971
+ <Input
1972
+ defaultValue={values[1]}
1973
+ disabled={disabled}
1974
+ style={styleCommon}
1975
+ onBlur={(e) => {
1976
+ values[1] = e.target.value;
1977
+ valueNames[1] = e.target.value;
1978
+ callback(values, valueNames);
1979
+ }}
1980
+ />
1981
+ </>
1982
+ );
1983
+ } else {
1984
+ return (
1985
+ <Input
1986
+ defaultValue={values.join(',')}
1987
+ disabled={disabled}
1988
+ style={styleCommon}
1989
+ onBlur={(e) => {
1990
+ values = e.target.value.split(',');
1991
+ valueNames = e.target.value.split(',');
1992
+ callback(values, valueNames);
1993
+ }}
1994
+ />
1995
+ );
1996
+ }
1997
+ } else if (dataTypeCode == 41) {
1998
+ // 日期41
1999
+ if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
2000
+ return (
2001
+ <RangePicker
2002
+ // showTime
2003
+ disabled={disabled}
2004
+ style={{ width: customerWidth || '300px' }}
2005
+ format={dataTypeCode == 41 ? dateFormat : fullDateFormat}
2006
+ value={[
2007
+ values[0] ? moment(values[0]) : '',
2008
+ values[1] ? moment(values[1]) : '',
2009
+ ]}
2010
+ onChange={(dates, dateStrings) => {
2011
+ // 业务产品要求时间范围取值固定00:00:00-23:59:59,有问题请找产品业务
2012
+ let dateStringFormat = [];
2013
+ if (dataTypeCode == 41) {
2014
+ dateStringFormat[0] = dateStrings[0]
2015
+ ? moment(dateStrings[0]).format('YYYY-MM-DD')
2016
+ : '';
2017
+ dateStringFormat[1] = dateStrings[1]
2018
+ ? moment(dateStrings[1]).format('YYYY-MM-DD')
2019
+ : '';
2020
+ } else {
2021
+ dateStringFormat[0] = dateStrings[0]
2022
+ ? moment(dateStrings[0]).format('YYYY-MM-DD 00:00:00')
2023
+ : '';
2024
+ dateStringFormat[1] = dateStrings[1]
2025
+ ? moment(dateStrings[1]).format('YYYY-MM-DD 23:59:59')
2026
+ : '';
2027
+ }
2028
+ values = [...dateStringFormat];
2029
+ valueNames = [...dateStringFormat];
2030
+ callback(values, valueNames);
2031
+ }}
2032
+ />
2033
+ );
2034
+ } else {
2035
+ return (
2036
+ <>
2037
+ <DatePicker
2038
+ format={dataTypeCode == 41 ? dateFormat : fullDateFormat}
2039
+ disabled={disabled}
2040
+ style={{ width: customerWidth || '300px' }}
2041
+ value={values[0] ? moment(values[0]) : ''}
2042
+ onChange={(date, dateString) => {
2043
+ values[0] = dateString;
2044
+ valueNames[0] = dateString;
2045
+ callback(values, valueNames);
2046
+ }}
2047
+ />
2048
+ </>
2049
+ );
2050
+ }
2051
+ } else if (dataTypeCode == 40) {
2052
+ // 时间40
2053
+ if (INTERVAL_TYPE.indexOf(selectOperation) > -1) {
2054
+ return (
2055
+ <>
2056
+ <TimePicker
2057
+ key="1"
2058
+ disabled={disabled}
2059
+ value={values[0] ? moment(values[0]) : ''}
2060
+ style={styleCommon}
2061
+ onChange={(time, timeString) => {
2062
+ values[0] = timeString;
2063
+ valueNames[0] = timeString;
2064
+ callback(values, valueNames);
2065
+ }}
2066
+ />
2067
+ <span>~</span>
2068
+ <TimePicker
2069
+ key="2"
2070
+ disabled={disabled}
2071
+ value={values[1] ? moment(values[1]) : ''}
2072
+ style={styleCommon}
2073
+ onChange={(time, timeString) => {
2074
+ values[1] = timeString;
2075
+ valueNames[1] = timeString;
2076
+ callback(values, valueNames);
2077
+ }}
2078
+ />
2079
+ </>
2080
+ );
2081
+ } else {
2082
+ return (
2083
+ <TimePicker
2084
+ defaultValue={values[0] ? moment(values[0]) : ''}
2085
+ disabled={disabled}
2086
+ style={styleCommon}
2087
+ onChange={(time, timeString) => {
2088
+ values[0] = timeString;
2089
+ valueNames[0] = timeString;
2090
+ callback(values, valueNames);
2091
+ }}
2092
+ />
2093
+ );
2094
+ }
2095
+ }
2096
+ }
2097
+ return '';
2098
+ };
2099
+
2100
+ render() {
2101
+ return (
2102
+ <div style={{ marginLeft: '10px' }} className={styles.rule_field_style}>
2103
+ {this.renderConditionField()}
2104
+ </div>
2105
+ );
2106
+ }
2107
+ }