kts-component-invoice-operate 3.2.239 → 3.2.241

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 (67) hide show
  1. package/dist/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/IGood/index.d.ts +0 -1
  2. package/dist/Invoice/InvoiceController/InvoiceControllerState/index.d.ts +0 -2
  3. package/dist/Invoice/InvoiceController/index.d.ts +0 -6
  4. package/dist/Invoice/index.d.ts +0 -2
  5. package/dist/index.esm.js +2749 -5772
  6. package/dist/index.js +2748 -5771
  7. package/package.json +1 -1
  8. package/src/Invoice/Invoice-digtal/_test/easiest/index.tsx +8 -40
  9. package/src/Invoice/Invoice-digtal/_test/freight/index.tsx +17 -23
  10. package/src/Invoice/Invoice-digtal/_test/realEstateInfo/index.tsx +0 -47
  11. package/src/Invoice/Invoice-digtal/index.md +6 -7
  12. package/src/Invoice/InvoiceController/InvoiceControllerForm/index.ts +0 -11
  13. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/IGood/index.ts +0 -2
  14. package/src/Invoice/InvoiceController/InvoiceControllerState/index.ts +0 -3
  15. package/src/Invoice/InvoiceController/index.ts +0 -21
  16. package/src/Invoice/index.tsx +0 -3
  17. package/src/Invoice/tools/useToGenerateId/index.ts +0 -2
  18. package/src/Invoice/ui/default/GoodsList/hook/useColumns/index.tsx +7 -0
  19. package/src/Invoice/ui/digtal/RealEstateInfo/index.tsx +37 -246
  20. package/src/Invoice/ui/digtal/StakeFarmerholder/index.less +1 -1
  21. package/src/Invoice/ui/digtal/StakeFarmerholder/index.tsx +204 -809
  22. package/dist/Invoice/Invoice-digtal/_test/pay/index.d.ts +0 -4
  23. package/dist/Invoice/InvoiceController/InvoiceControllerState/PayListState/IColumnsReplenish/index.d.ts +0 -6
  24. package/dist/Invoice/InvoiceController/InvoiceControllerState/PayListState/IGood/index.d.ts +0 -12
  25. package/dist/Invoice/InvoiceController/InvoiceControllerState/PayListState/ImportGoods/index.d.ts +0 -21
  26. package/dist/Invoice/InvoiceController/InvoiceControllerState/PayListState/index.d.ts +0 -31
  27. package/dist/Invoice/InvoiceController/fns/addPay.d.ts +0 -6
  28. package/dist/Invoice/InvoiceController/fns/delPay.d.ts +0 -6
  29. package/dist/Invoice/InvoiceController/fns/saveEditPay.d.ts +0 -6
  30. package/dist/Invoice/InvoiceController/fns/setEditPay.d.ts +0 -6
  31. package/dist/Invoice/InvoiceController/fns/setPay.d.ts +0 -6
  32. package/dist/Invoice/ui/digtal/PayList/hook/useColumns/index.d.ts +0 -3
  33. package/dist/Invoice/ui/digtal/PayList/hook/useColumns/ui/TitleText/index.d.ts +0 -8
  34. package/dist/Invoice/ui/digtal/PayList/hook/useOnRow/index.d.ts +0 -8
  35. package/dist/Invoice/ui/digtal/PayList/hook/useRowSelection/index.d.ts +0 -8
  36. package/dist/Invoice/ui/digtal/PayList/hook/useWindowClick/index.d.ts +0 -5
  37. package/dist/Invoice/ui/digtal/PayList/index.d.ts +0 -18
  38. package/dist/Invoice/ui/digtal/PayList/ui/AddRowButton/index.d.ts +0 -3
  39. package/dist/Invoice/ui/digtal/PayList/ui/BulkMenu/hooks/useDelRowButton/index.d.ts +0 -6
  40. package/dist/Invoice/ui/digtal/PayList/ui/BulkMenu/hooks/useEmptyRefill/index.d.ts +0 -6
  41. package/dist/Invoice/ui/digtal/PayList/ui/TableRow/index.d.ts +0 -3
  42. package/dist/Invoice/ui/digtal/PayList/ui/TableVirtual/index.d.ts +0 -4
  43. package/src/Invoice/Invoice-digtal/_test/pay/index.tsx +0 -14637
  44. package/src/Invoice/InvoiceController/InvoiceControllerState/PayListState/IColumnsReplenish/index.ts +0 -10
  45. package/src/Invoice/InvoiceController/InvoiceControllerState/PayListState/IGood/index.ts +0 -35
  46. package/src/Invoice/InvoiceController/InvoiceControllerState/PayListState/ImportGoods/index.ts +0 -81
  47. package/src/Invoice/InvoiceController/InvoiceControllerState/PayListState/index.ts +0 -40
  48. package/src/Invoice/InvoiceController/fns/addPay.ts +0 -11
  49. package/src/Invoice/InvoiceController/fns/delPay.ts +0 -38
  50. package/src/Invoice/InvoiceController/fns/saveEditPay.ts +0 -23
  51. package/src/Invoice/InvoiceController/fns/setEditPay.ts +0 -16
  52. package/src/Invoice/InvoiceController/fns/setPay.ts +0 -11
  53. package/src/Invoice/ui/digtal/PayList/hook/useColumns/dist/index.js +0 -616
  54. package/src/Invoice/ui/digtal/PayList/hook/useColumns/index.tsx +0 -168
  55. package/src/Invoice/ui/digtal/PayList/hook/useColumns/ui/TitleText/index.tsx +0 -20
  56. package/src/Invoice/ui/digtal/PayList/hook/useOnRow/index.tsx +0 -37
  57. package/src/Invoice/ui/digtal/PayList/hook/useRowSelection/index.tsx +0 -120
  58. package/src/Invoice/ui/digtal/PayList/hook/useWindowClick/index.tsx +0 -19
  59. package/src/Invoice/ui/digtal/PayList/index.less +0 -73
  60. package/src/Invoice/ui/digtal/PayList/index.tsx +0 -132
  61. package/src/Invoice/ui/digtal/PayList/ui/AddRowButton/index.tsx +0 -75
  62. package/src/Invoice/ui/digtal/PayList/ui/BulkMenu/hooks/useDelRowButton/index.tsx +0 -50
  63. package/src/Invoice/ui/digtal/PayList/ui/BulkMenu/hooks/useEmptyRefill/index.tsx +0 -37
  64. package/src/Invoice/ui/digtal/PayList/ui/TableRow/index.less +0 -29
  65. package/src/Invoice/ui/digtal/PayList/ui/TableRow/index.tsx +0 -21
  66. package/src/Invoice/ui/digtal/PayList/ui/TableVirtual/index.less +0 -39
  67. package/src/Invoice/ui/digtal/PayList/ui/TableVirtual/index.tsx +0 -109
@@ -1,9 +1,9 @@
1
1
 
2
- import React, { useCallback } from 'react';
2
+ import React from 'react';
3
3
  import Icon from '@ant-design/icons';
4
4
  import { decorator } from "grey-react-box";
5
5
  import { Form } from "kts-components-antd-x3";
6
- import { AutoComplete, Button, Checkbox, Col, Input, InputProps, Select, Row, Tooltip } from 'kts-xui'
6
+ import { AutoComplete, Button, Checkbox, Col, Input, InputProps, Row, Tooltip } from 'kts-xui'
7
7
  import { CheckboxChangeEvent } from 'kts-components-antd-x4/lib/checkbox';
8
8
  import { FormComponentProps } from "kts-components-antd-x3/lib/form";
9
9
  import { WrappedFormUtils } from 'kts-components-antd-x3/lib/form/Form';
@@ -40,12 +40,7 @@ const RULES = {
40
40
  bankAccount: (label: string) => [
41
41
  { max: 100, message: `${label}内容超长` },
42
42
  { pattern: /^([0-9a-zA-Z-\s])*$/g, message: `${label}仅能数字、字母、-、空格` }
43
- ],
44
- certificateNumber: (label: string) => [
45
- { required: true, message: `${label}必填` },
46
- { max: 30, message: `${label}内容超长` },
47
- { pattern: /^([a-zA-Z0-9])*$/g, message: `${label}仅能数字、英文` }
48
- ],
43
+ ]
49
44
  }
50
45
 
51
46
  const formatCompanyName = (e: any) => {
@@ -98,10 +93,7 @@ export default decorator<IStakeholder, IStakeholder & FormComponentProps>(Form.c
98
93
  const disableds = controller.useMemo(s => s.stakeholder.disableds || [], []);
99
94
 
100
95
  const rulesMap = controller.useMemo(s => s.stakeholder.rulesMap || {}, []);
101
- const [validateStatus, setStatus] = React.useState<any>('');
102
- const [errorInfo, setInfo] = React.useState('');
103
- const [nation, setNationStatue] = React.useState<any>('');
104
- const [nationInfo, setNation] = React.useState('');
96
+
105
97
  /** 乐企 */
106
98
  const leqispanW = React.useMemo(() => {
107
99
  if (props.leqi) {
@@ -140,418 +132,46 @@ export default decorator<IStakeholder, IStakeholder & FormComponentProps>(Form.c
140
132
  React.useEffect(() => {
141
133
  setExpand(typeof props.isExpand === 'boolean' ? props.isExpand : true);
142
134
  }, [props.isExpand])
143
- const onChangeType = useCallback(
144
- (value: string) => {
145
- const supplierTaxId = form?.getFieldValue("supplierTaxId");
146
- const certificateNumber = form?.getFieldValue("certificateNumber");
147
- const nationality = form?.getFieldValue("nationality");
148
- if (value === "201") {
149
- // 当“自然人证件类型”选择“201:居民身份证”时,校验是否为“156:中国’
150
- form?.setFieldsValue({ nationality: "156" });
151
- setNationStatue('');
152
- setNation('');
153
- if (supplierTaxId !== certificateNumber) {
154
- setStatus('error');
155
- setInfo('证件号码应与销方税号保持一致')
156
- }
157
- } else if (value === "210") {
158
- if (value.startsWith("M")) {
159
- //如果“证件号码”以M开头,"国籍(或地区头,)”必须为“446:中国澳门”;校验证件号码必须以H或M开头
160
- if (nationality !== '446') {
161
- setNationStatue('error');
162
- setNation('请选择正确的国籍');
163
- } else {
164
- setNationStatue('');
165
- setNation('');
166
- }
167
-
168
- } else if (value.startsWith("H")) {
169
- //如果“证件号码”以H开国籍(或地区)”必须为“344:中国香港”;
170
- if (nationality !== '344') {
171
- setNationStatue('error');
172
- setNation('请选择正确的国籍');
173
- } else {
174
- setNationStatue('');
175
- setNation('');
176
- }
177
-
178
- } else {
179
- setStatus('error');
180
- setInfo('请输入正确的证件号码')
181
- }
182
- } else if (value === "237") {
183
- if (value.startsWith("810000")) {
184
- if (nationality !== '344') {
185
- setNationStatue('error');
186
- setNation('请选择正确的国籍');
187
- } else {
188
- setNationStatue('');
189
- setNation('');
190
- }
191
-
192
- } else if (value.startsWith("820000")) {
193
- if (nationality !== '446') {
194
- setNationStatue('error');
195
- setNation('请选择正确的国籍');
196
- } else {
197
- setNationStatue('');
198
- setNation('');
199
- }
200
-
201
-
202
- } else {
203
- setStatus('error');
204
- setInfo('请输入正确的证件号码')
205
- return Promise.reject("请输入正确的证件号码");
206
- }
207
- } else if (value === "227") {
208
-
209
- // 当“自然人证件类型”选择“227:中华人民共和国护照”时,校验是否为“156:中国
210
- form?.setFieldsValue({ nationality: "156" });
211
-
212
- } else if (value === "213" || value === "238") {
213
- // 当“自然人证件类型”选择“213:台湾居民来往大陆通行证”时,校验是否为”158:中国台湾”
214
- // 当“自然人证件类型”选择“238:中华人民共和国台湾居民居住证”时,校验是否为“ 158:中国台湾”
215
- form?.setFieldsValue({ nationality: "158" });
216
- }
217
- },
218
- [form]
219
- );
220
- /** 校验证件号码*/
221
- const validateIDCode = useCallback(
222
- (_: any, value: string) => {
223
- if (!value) {
224
- setStatus('error');
225
- setInfo('请输入正确的证件号码')
226
- return Promise.resolve();
227
- }
228
-
229
- const idtype = form?.getFieldValue("certificateType");
230
- const nationality = form?.getFieldValue("nationality");
231
- if (idtype === "210") {
232
- // 当“自然人证件类型”选择“210:港澳居民来往内地通行证”时,
233
-
234
135
 
235
- if (value.startsWith("M")) {
236
- //如果“证件号码”以M开头,"国籍(或地区头,)”必须为“446:中国澳门”;校验证件号码必须以H或M开头
237
- if (nationality !== '446') {
238
- setNationStatue('error');
239
- setNation('请选择正确的国籍');
240
- } else {
241
- setNationStatue('');
242
- setNation('');
243
- }
244
-
245
- } else if (value.startsWith("H")) {
246
- //如果“证件号码”以H开国籍(或地区)”必须为“344:中国香港”;
247
- if (nationality !== '344') {
248
- setNationStatue('error');
249
- setNation('请选择正确的国籍');
250
- } else {
251
- setNationStatue('');
252
- setNation('');
253
- }
254
-
255
- } else {
256
- setStatus('error');
257
- setInfo('请输入正确的证件号码')
258
- return Promise.reject("请输入正确的证件号码");
259
- }
260
- } else if (idtype === "237") {
261
- //当“自然人证件类型”选择“237:中华人民共和国港澳居民居住证”时,校验证件号码必须以810000或820000开头,如果“证件号码”以810000开头,必须为“344:中国香国籍(或地区))港”;如果“证件号码”以820000开头,国籍(或地区)必须为“446:中国澳门”
262
- if (value.startsWith("810000")) {
263
- if (nationality !== '344') {
264
- setNationStatue('error');
265
- setNation('请选择正确的国籍');
266
- } else {
267
- setNationStatue('');
268
- setNation('');
269
- }
270
-
271
- } else if (value.startsWith("820000")) {
272
- if (nationality !== '446') {
273
- setNationStatue('error');
274
- setNation('请选择正确的国籍');
275
- } else {
276
- setNationStatue('');
277
- setNation('');
278
- }
279
-
280
-
281
- } else {
282
- setStatus('error');
283
- setInfo('请输入正确的证件号码')
284
- return Promise.reject("请输入正确的证件号码");
285
- }
286
- }
287
- // 当“销售方自然人证件类型”填写“201:居民身份证”,“销售方纳税人识别号”必须与“销售方自然人证件号码”完全一致
288
- if (idtype === "201") {
289
- const supplierTaxId = form?.getFieldValue("supplierTaxId");
290
- if (value !== supplierTaxId) {
291
- setStatus('error');
292
- setInfo('证件号码应与销方税号保持一致')
293
- return Promise.reject("证件号码应与销方税号保持一致");
294
- } else if (value === supplierTaxId) {
295
- setStatus('');
296
- setInfo('')
297
- }
298
- }
299
- setStatus('');
300
- setInfo('')
301
- return Promise.resolve();
302
- },
303
- [form]
304
- );
305
- const validateIDCode2 = useCallback(
306
- (e: any) => {
307
- const value = e.target.value;
308
- // if (!value) {
309
- // setStatus('');
310
- // setInfo('')
311
- // }
312
-
313
- const idtype = form?.getFieldValue("certificateType");
314
-
315
- // // 当“销售方自然人证件类型”填写“201:居民身份证”,“销售方纳税人识别号”必须与“销售方自然人证件号码”完全一致
316
- if (idtype === "201") {
317
- const certificateNumber = form?.getFieldValue("certificateNumber");
318
- console.log(value, certificateNumber)
319
- if (value !== certificateNumber) {
320
- setStatus('error');
321
- setInfo('证件号码应与销方税号保持一致')
322
- } else {
323
- setStatus('');
324
- setInfo('')
325
- }
326
- }
327
- },
328
- [form]
329
- );
330
- const validateNationality = useCallback(
331
- (_: any, value: string) => {
332
- if (!value) {
333
- setNationStatue('error');
334
- setNation('请选择正确的国籍');
335
- return Promise.resolve();
336
- }
337
- const idtype = form?.getFieldValue("certificateType");
338
- const idcode = form?.getFieldValue("certificateNumber");
339
- console.log(value, idtype, idcode)
340
- if (idtype === "201" || idtype === "227") {
341
- // 当“自然人证件类型”选择“201:居民身份证”时,校验是否为“156:中国’
342
- // 当“自然人证件类型”选择“227:中华人民共和国护照”时,校验是否为“156:中国
343
- if (value !== "156") {
344
- setNationStatue('error');
345
- setNation('请选择正确的国籍');
346
- return Promise.reject("请选择正确的国籍");
347
- }
348
- } else if (idtype === "213" || idtype === "238") {
349
- // 当“自然人证件类型”选择“213:台湾居民来往大陆通行证”时,校验是否为”158:中国台湾”
350
- // 当“自然人证件类型”选择“238:中华人民共和国台湾居民居住证”时,校验是否为“ 158:中国台湾”
351
- if (value !== "158") {
352
- setNationStatue('error');
353
- setNation('请选择正确的国籍');
354
- return Promise.reject("请选择正确的国籍");
355
- }
356
- } else if (idtype === "210") {
357
- //当“自然人证件类型”选择“210:港澳居民来往内地通行证”时,如果“证件号码”以H开国籍(或地区)”必须为“344:中国香港”;如果“证件号码”以M开头,"国籍(或地区头,)”必须为“446:中国澳门”;
358
- let r = false;
359
- if (idcode) {
360
- if (idcode.startsWith("M") && value === "446") {
361
- r = true;
362
- } else if (idcode.startsWith("H") && value === "344") {
363
- r = true;
364
- }
365
- } else if (value === "344" || value === "446") {
366
- r = true;
367
- }
368
- if (!r) {
369
- setNationStatue('error');
370
- setNation('请选择正确的国籍');
371
- return Promise.reject("请选择正确的国籍");
372
- }
373
- } else if (idtype === "237") {
374
- //当“自然人证件类型”选择“237:中华人民共和国港澳居民居住证”时,校验证件号码必须以810000或820000开头,如果“证件号码”以810000开头,必须为“344:中国香国籍(或地区))港”;如果“证件号码”以820000开头,国籍(或地区)必须为“446:中国澳门”
375
- let r = false;
376
- if (idcode) {
377
- if (idcode.startsWith("820000") && value === "446") {
378
- r = true;
379
- } else if (idcode.startsWith("810000") && value === "344") {
380
- r = true;
381
- }
382
- } else if (value === "344" || value === "446") {
383
- r = true;
384
- }
385
- if (!r) {
386
- setNationStatue('error');
387
- setNation('请选择正确的国籍');
388
- return Promise.reject("请选择正确的国籍");
389
- }
390
- }
391
- setNationStatue('');
392
- setNation('');
393
- return Promise.resolve();
394
- },
395
- [form]
396
- );
397
136
  return (
398
- <>
399
- <div className={classNames("kts-invoice-operate-invoice-digtal-stakeholder", { readOnly: readOnly })} >
400
- <div>
401
- {'销售方信息'.split('').map(e => <span>{e}</span>)}
402
- {
403
- !readOnly &&
404
- <Icon
405
- className="digtal-stakeholder-expand-button"
406
- component={isExpand ? ArrowUpSvg : ArrowDownSvg}
407
- onClick={onExpand}
408
- />
409
- }
410
- </div>
411
- <div>
412
- <div style={{ marginTop: 20 }} className='natural-person-flag' >
413
- {
414
- props.isNaturalPerson === true &&
415
- <Form.Item colon={false}>
416
- {getFieldDecorator('naturalPersonFlag', {
417
- })(
418
- <NaturalPersonFlag readOnly={isReadOnly('naturalPersonFlag')} />
419
- )}
420
- </Form.Item>
421
- }
422
- </div>
423
- <Form className="digtal-stakeholder-form" >
424
- <Row gutter={[16, 0]}>
425
- <Col span={24} >
426
- <Form.Item label='名称' colon={false}>
427
- {getFieldDecorator('supplierName', {
428
- rules: getRules('supplierName', RULES.companyName('销售方名称')),
429
- // getValueFromEvent: formatCompanyName
430
- })
431
- // (<MyInput readOnly={isReadOnly('supplierName')} placeholder="请输入名称" autoComplete="off" />)
432
- (
433
- <BuyerNameInput
434
- myform={form}
435
- fieldName='supplierName'
436
- readOnly={isReadOnly('supplierName')}
437
- placeholder="请输入名称"
438
- autoComplete="off"
439
- suffix={
440
- isShowImportButton === true &&
441
- <Button
442
- type='link'
443
- style={{ padding: 0, width: 20, height: '100%' }}
444
- icon={<Icon component={PlusSvg} />}
445
- onClick={() => { onClickImportButton && onClickImportButton(controller) }}
446
- />
447
- }
448
- />
449
- )
450
- }
451
- </Form.Item>
452
- </Col>
453
-
454
- <Col span={24} >
455
- <Form.Item label='统一社会信用代码/纳税人识别号' colon={false}>
456
- {getFieldDecorator('supplierTaxId', {
457
- rules: getRules('supplierTaxId', [{ required: true, message: '销售方纳税人识别号必填' }, ...RULES.taxId('销售方纳税人识别号')])
458
- })
459
- // (<MyInput readOnly={isReadOnly('supplierTaxId')} placeholder="请输入统一社会信用代码/纳税人识别号" autoComplete="off" />)
460
- (<BuyerNameInput
461
- onChange={validateIDCode2}
462
- myform={form}
463
- fieldName='supplierTaxId'
464
- readOnly={isReadOnly('supplierTaxId')}
465
- placeholder="请输入统一社会信用代码/纳税人识别号"
466
- autoComplete="off"
467
- />)
468
- }
469
- </Form.Item>
470
- </Col>
471
-
472
- <Col span={10 + leqispanW} style={{ display: isExpand ? undefined : 'none' }} >
473
- <Form.Item label='销售方地址' colon={false}>
474
- {getFieldDecorator('sellerAddress', {
475
- rules: getRules('sellerAddress', [{ max: 300, message: '销售方地址内容超长' }])
476
- })(<MyInput readOnly={isReadOnly('sellerAddress')} placeholder="请输入销售方地址" autoComplete="off" />)}
477
- </Form.Item>
478
- </Col>
479
-
480
- <Col span={10 + leqispanW} style={{ display: isExpand ? undefined : 'none' }} >
481
- <Form.Item label='电话' colon={false} className='telephone' >
482
- {getFieldDecorator('sellerPhone', {
483
- rules: getRules('sellerPhone', RULES.sellerTelPhone('销售方电话'))
484
- })(<MyInput readOnly={isReadOnly('sellerPhone')} placeholder="请输入电话" autoComplete="off" />)}
485
- </Form.Item>
486
- </Col>
487
-
488
- <Col span={10 + leqispanW} style={{ display: isExpand ? undefined : 'none' }} >
489
- <Form.Item label='销售方开户银行' colon={false}>
490
- {getFieldDecorator('sellerBank', {
491
- rules: getRules('sellerBank', RULES.bankName('销售方开户银行'))
492
- })(<MyInput readOnly={isReadOnly('sellerBank')} placeholder="请输入销售方开户银行" autoComplete="off" />)}
493
- </Form.Item>
494
- </Col>
495
- {(props.leqi) &&
496
- <Col span={4} style={{ display: isExpand ? undefined : 'none' }}>
497
- <Form.Item colon={false}>
498
- {getFieldDecorator('sellerAddressPhoneFlag', {
499
- valuePropName: 'checked',
500
- })(<Checkbox onChange={props?.invoiceMarkCallback} disabled={isReadOnly('sellerAddressPhoneFlag')} style={{ whiteSpace: 'nowrap' }}>是否展示</Checkbox>)}
501
- </Form.Item>
502
- </Col>
503
- }
504
- <Col span={10 + leqispanW} style={{ display: isExpand ? undefined : 'none' }} >
505
- <Form.Item label='银行账号' colon={false}>
506
- {getFieldDecorator('sellerAccount', {
507
- rules: getRules('sellerAccount', RULES.bankAccount('销售方银行账号'))
508
- })(<MyInput readOnly={isReadOnly('sellerAccount')} placeholder="请输入银行账号" autoComplete="off" />)}
509
- </Form.Item>
510
- </Col>
511
- {(props.leqi || props.riskData?.code === 'success') &&
512
- <Col span={4} style={{ display: isExpand ? undefined : 'none' }}>
513
- <Form.Item colon={false}>
514
- {getFieldDecorator('sellerBankAccountFlag', {
515
- valuePropName: 'checked',
516
- })(<Checkbox onChange={props?.invoiceMarkCallback} disabled={isReadOnly('sellerBankAccountFlag')} style={{ whiteSpace: 'nowrap' }}>是否展示</Checkbox>)}
517
- </Form.Item>
518
- </Col>
519
- }
520
- </Row>
521
- </Form>
522
- </div>
523
- <div>
524
- {'购买方信息'.split('').map(e => <span>{e}</span>)}
137
+ <div className={classNames("kts-invoice-operate-invoice-digtal-stakeholder", { readOnly: readOnly })} >
138
+ <div>
139
+ {'销售方信息'.split('').map(e => <span>{e}</span>)}
140
+ {
141
+ !readOnly &&
142
+ <Icon
143
+ className="digtal-stakeholder-expand-button"
144
+ component={isExpand ? ArrowUpSvg : ArrowDownSvg}
145
+ onClick={onExpand}
146
+ />
147
+ }
148
+ </div>
149
+ <div>
150
+ <div style={{ marginTop: 20 }} className='natural-person-flag' >
525
151
  {
526
- !readOnly &&
527
- <Icon
528
- className="digtal-stakeholder-expand-button"
529
- component={isExpand ? ArrowUpSvg : ArrowDownSvg}
530
- onClick={onExpand}
531
- />
152
+ props.isNaturalPerson === true &&
153
+ <Form.Item colon={false}>
154
+ {getFieldDecorator('naturalPersonFlag', {
155
+ })(
156
+ <NaturalPersonFlag readOnly={isReadOnly('naturalPersonFlag')} />
157
+ )}
158
+ </Form.Item>
532
159
  }
533
160
  </div>
534
- <div>
535
- {
536
- !readOnly && props.lineCredit &&
537
- <div style={{ marginTop: 20 }} >
538
- <Tooltip trigger="click" title={props.lineCredit} >
539
- <Button type="link" style={{ padding: `0px 8px` }} >查看当前可用授信额度</Button>
540
- </Tooltip>
541
- </div>
542
- }
543
-
544
- <Form className="digtal-stakeholder-form" >
545
- <Row gutter={[16, 0]}>
546
- <Col span={24} >
547
- <Form.Item label='名称' colon={false}>
548
- {getFieldDecorator('buyerName', {
549
- rules: getRules('buyerName', RULES.companyName('购买方名称')),
550
- })(
161
+ <Form className="digtal-stakeholder-form" >
162
+ <Row gutter={[16, 0]}>
163
+ <Col span={24} >
164
+ <Form.Item label='名称' colon={false}>
165
+ {getFieldDecorator('supplierName', {
166
+ rules: getRules('supplierName', RULES.companyName('销售方名称')),
167
+ // getValueFromEvent: formatCompanyName
168
+ })
169
+ // (<MyInput readOnly={isReadOnly('supplierName')} placeholder="请输入名称" autoComplete="off" />)
170
+ (
551
171
  <BuyerNameInput
552
172
  myform={form}
553
- fieldName='buyerName'
554
- readOnly={isReadOnly('buyerName')}
173
+ fieldName='supplierName'
174
+ readOnly={isReadOnly('supplierName')}
555
175
  placeholder="请输入名称"
556
176
  autoComplete="off"
557
177
  suffix={
@@ -564,119 +184,194 @@ export default decorator<IStakeholder, IStakeholder & FormComponentProps>(Form.c
564
184
  />
565
185
  }
566
186
  />
567
- )}
568
- </Form.Item>
569
- </Col>
187
+ )
188
+ }
189
+ </Form.Item>
190
+ </Col>
570
191
 
571
- <Col span={24} >
572
- <Form.Item label='统一社会信用代码/纳税人识别号' colon={false}>
573
- {getFieldDecorator('buyerTaxId', {
574
- rules: getRules('buyerTaxId', [{ required: !isVatNormal, message: '购买方纳税人识别号必填' }, ...RULES.taxId('购买方纳税人识别号')])
575
- })(
576
- <BuyerNameInput
577
- myform={form}
578
- fieldName='buyerTaxId'
579
- readOnly={isReadOnly('buyerTaxId')}
580
- placeholder="请输入统一社会信用代码/纳税人识别号"
581
- autoComplete="off"
582
- />
583
- )}
584
- </Form.Item>
585
- </Col>
192
+ <Col span={24} >
193
+ <Form.Item label='统一社会信用代码/纳税人识别号' colon={false}>
194
+ {getFieldDecorator('supplierTaxId', {
195
+ rules: getRules('supplierTaxId', [{ required: true, message: '销售方纳税人识别号必填' }, ...RULES.taxId('销售方纳税人识别号')])
196
+ })
197
+ // (<MyInput readOnly={isReadOnly('supplierTaxId')} placeholder="请输入统一社会信用代码/纳税人识别号" autoComplete="off" />)
198
+ (<BuyerNameInput
199
+ myform={form}
200
+ fieldName='supplierTaxId'
201
+ readOnly={isReadOnly('supplierTaxId')}
202
+ placeholder="请输入统一社会信用代码/纳税人识别号"
203
+ autoComplete="off"
204
+ />)
205
+ }
206
+ </Form.Item>
207
+ </Col>
586
208
 
587
- <Col span={10 + leqispanW} style={{ display: isExpand ? undefined : 'none' }} >
588
- <Form.Item label='购买方地址' colon={false}>
589
- {getFieldDecorator('buyerAddress', {
590
- rules: getRules('buyerAddress', [{ max: 100, message: '购买方地址内容超长' }])
591
- })(<MyInput readOnly={isReadOnly('buyerAddress')} placeholder="请输入购买方地址" autoComplete="off" />)}
592
- </Form.Item>
593
- </Col>
209
+ <Col span={10 + leqispanW} style={{ display: isExpand ? undefined : 'none' }} >
210
+ <Form.Item label='销售方地址' colon={false}>
211
+ {getFieldDecorator('sellerAddress', {
212
+ rules: getRules('sellerAddress', [{ max: 300, message: '销售方地址内容超长' }])
213
+ })(<MyInput readOnly={isReadOnly('sellerAddress')} placeholder="请输入销售方地址" autoComplete="off" />)}
214
+ </Form.Item>
215
+ </Col>
594
216
 
595
- <Col span={10 + leqispanW} style={{ display: isExpand ? undefined : 'none' }} >
596
- <Form.Item label='电话' colon={false} className='telephone'>
597
- {getFieldDecorator('buyerPhone', {
598
- rules: getRules('buyerPhone', RULES.buyerTelPhone('购买方电话'))
599
- })(<MyInput readOnly={isReadOnly('buyerPhone')} placeholder="请输入电话" autoComplete="off" />)}
600
- </Form.Item>
601
- </Col>
602
- <Col span={10 + leqispanW} style={{ display: isExpand ? undefined : 'none' }} >
603
- <Form.Item label='购买方开户银行' colon={false}>
604
- {getFieldDecorator('buyerBank', {
605
- rules: getRules('buyerBank', RULES.bankName('购买方开户银行'))
606
- })(<MyInput readOnly={isReadOnly('buyerBank')} placeholder="请输入购买方开户银行" autoComplete="off" />)}
607
- </Form.Item>
608
- </Col>
609
- <Col span={10 + leqispanW} style={{ display: isExpand ? undefined : 'none' }} >
610
- <Form.Item label='购买方开户银行' colon={false}>
611
- {getFieldDecorator('buyerBank', {
612
- rules: getRules('buyerBank', RULES.bankName('购买方开户银行'))
613
- })(<MyInput readOnly={isReadOnly('buyerBank')} placeholder="请输入购买方开户银行" autoComplete="off" />)}
217
+ <Col span={10 + leqispanW} style={{ display: isExpand ? undefined : 'none' }} >
218
+ <Form.Item label='电话' colon={false} className='telephone' >
219
+ {getFieldDecorator('sellerPhone', {
220
+ rules: getRules('sellerPhone', RULES.sellerTelPhone('销售方电话'))
221
+ })(<MyInput readOnly={isReadOnly('sellerPhone')} placeholder="请输入电话" autoComplete="off" />)}
222
+ </Form.Item>
223
+ </Col>
224
+
225
+ <Col span={10 + leqispanW} style={{ display: isExpand ? undefined : 'none' }} >
226
+ <Form.Item label='销售方开户银行' colon={false}>
227
+ {getFieldDecorator('sellerBank', {
228
+ rules: getRules('sellerBank', RULES.bankName('销售方开户银行'))
229
+ })(<MyInput readOnly={isReadOnly('sellerBank')} placeholder="请输入销售方开户银行" autoComplete="off" />)}
230
+ </Form.Item>
231
+ </Col>
232
+ {(props.leqi) &&
233
+ <Col span={4} style={{ display: isExpand ? undefined : 'none' }}>
234
+ <Form.Item colon={false}>
235
+ {getFieldDecorator('sellerAddressPhoneFlag', {
236
+ valuePropName: 'checked',
237
+ })(<Checkbox onChange={props?.invoiceMarkCallback} disabled={isReadOnly('sellerAddressPhoneFlag')} style={{ whiteSpace: 'nowrap' }}>是否展示</Checkbox>)}
614
238
  </Form.Item>
615
239
  </Col>
616
-
617
- <Col span={10 + leqispanW} style={{ display: isExpand ? undefined : 'none' }} >
618
- <Form.Item label='银行账号' colon={false}>
619
- {getFieldDecorator('buyerAccount', {
620
- rules: getRules('buyerAccount', RULES.bankAccount('购买方银行账号'))
621
- })(<MyInput readOnly={isReadOnly('buyerAccount')} placeholder="请输入银行账号" autoComplete="off" />)}
240
+ }
241
+ <Col span={10 + leqispanW} style={{ display: isExpand ? undefined : 'none' }} >
242
+ <Form.Item label='银行账号' colon={false}>
243
+ {getFieldDecorator('sellerAccount', {
244
+ rules: getRules('sellerAccount', RULES.bankAccount('销售方银行账号'))
245
+ })(<MyInput readOnly={isReadOnly('sellerAccount')} placeholder="请输入银行账号" autoComplete="off" />)}
246
+ </Form.Item>
247
+ </Col>
248
+ {(props.leqi || props.riskData?.code === 'success') &&
249
+ <Col span={4} style={{ display: isExpand ? undefined : 'none' }}>
250
+ <Form.Item colon={false}>
251
+ {getFieldDecorator('sellerBankAccountFlag', {
252
+ valuePropName: 'checked',
253
+ })(<Checkbox onChange={props?.invoiceMarkCallback} disabled={isReadOnly('sellerBankAccountFlag')} style={{ whiteSpace: 'nowrap' }}>是否展示</Checkbox>)}
622
254
  </Form.Item>
623
255
  </Col>
624
- {(props.leqi || props.riskData?.code === 'success') &&
625
- <Col span={4} style={{ display: isExpand ? undefined : 'none' }}>
626
- <Form.Item colon={false}>
627
- {getFieldDecorator('buyerBankAccountFlag', {
628
- valuePropName: 'checked',
629
- })(<Checkbox onChange={props?.invoiceMarkCallback} disabled={isReadOnly('buyerBankAccountFlag')} style={{ whiteSpace: 'nowrap' }}>是否展示</Checkbox>)}
630
- </Form.Item>
631
- </Col>
632
- }
633
- </Row>
634
- </Form>
635
- </div>
636
-
256
+ }
257
+ </Row>
258
+ </Form>
637
259
  </div>
638
- <div className='kts-invoice-operate-invoice-digtal-payinfo'>
639
- <Form className="digtal-stakeholder-form" style={{ width: '100%' }}>
260
+ <div>
261
+ {'购买方信息'.split('').map(e => <span>{e}</span>)}
262
+ {
263
+ !readOnly &&
264
+ <Icon
265
+ className="digtal-stakeholder-expand-button"
266
+ component={isExpand ? ArrowUpSvg : ArrowDownSvg}
267
+ onClick={onExpand}
268
+ />
269
+ }
270
+ </div>
271
+ <div>
272
+ {
273
+ !readOnly && props.lineCredit &&
274
+ <div style={{ marginTop: 20 }} >
275
+ <Tooltip trigger="click" title={props.lineCredit} >
276
+ <Button type="link" style={{ padding: `0px 8px` }} >查看当前可用授信额度</Button>
277
+ </Tooltip>
278
+ </div>
279
+ }
280
+
281
+ <Form className="digtal-stakeholder-form" >
640
282
  <Row gutter={[16, 0]}>
641
- <Col span={5} >
642
- <Form.Item label='自然人销售方补充信息' colon={false} >
283
+ <Col span={24} >
284
+ <Form.Item label='名称' colon={false}>
285
+ {getFieldDecorator('buyerName', {
286
+ rules: getRules('buyerName', RULES.companyName('购买方名称')),
287
+ })(
288
+ <BuyerNameInput
289
+ myform={form}
290
+ fieldName='buyerName'
291
+ readOnly={isReadOnly('buyerName')}
292
+ placeholder="请输入名称"
293
+ autoComplete="off"
294
+ suffix={
295
+ isShowImportButton === true &&
296
+ <Button
297
+ type='link'
298
+ style={{ padding: 0, width: 20, height: '100%' }}
299
+ icon={<Icon component={PlusSvg} />}
300
+ onClick={() => { onClickImportButton && onClickImportButton(controller) }}
301
+ />
302
+ }
303
+ />
304
+ )}
305
+ </Form.Item>
306
+ </Col>
307
+
308
+ <Col span={24} >
309
+ <Form.Item label='统一社会信用代码/纳税人识别号' colon={false}>
310
+ {getFieldDecorator('buyerTaxId', {
311
+ rules: getRules('buyerTaxId', [{ required: !isVatNormal, message: '购买方纳税人识别号必填' }, ...RULES.taxId('购买方纳税人识别号')])
312
+ })(
313
+ <BuyerNameInput
314
+ myform={form}
315
+ fieldName='buyerTaxId'
316
+ readOnly={isReadOnly('buyerTaxId')}
317
+ placeholder="请输入统一社会信用代码/纳税人识别号"
318
+ autoComplete="off"
319
+ />
320
+ )}
321
+ </Form.Item>
322
+ </Col>
643
323
 
324
+ <Col span={10 + leqispanW} style={{ display: isExpand ? undefined : 'none' }} >
325
+ <Form.Item label='购买方地址' colon={false}>
326
+ {getFieldDecorator('buyerAddress', {
327
+ rules: getRules('buyerAddress', [{ max: 100, message: '购买方地址内容超长' }])
328
+ })(<MyInput readOnly={isReadOnly('buyerAddress')} placeholder="请输入购买方地址" autoComplete="off" />)}
644
329
  </Form.Item>
645
330
  </Col>
646
- {/* <label>自然人销售方补充信息</label> */}
647
- <Col span={6} >
648
- <Form.Item label='证件类型' colon={false} >
649
- {getFieldDecorator('certificateType', {
650
- rules: [{ required: true, message: '数据必填' }]
651
- })(<CardSelect onChange={onChangeType} readOnly={isReadOnly('certificateType')} placeholder="数据必填" autoComplete="off" />)}
331
+
332
+ <Col span={10 + leqispanW} style={{ display: isExpand ? undefined : 'none' }} >
333
+ <Form.Item label='电话' colon={false} className='telephone'>
334
+ {getFieldDecorator('buyerPhone', {
335
+ rules: getRules('buyerPhone', RULES.buyerTelPhone('购买方电话'))
336
+ })(<MyInput readOnly={isReadOnly('buyerPhone')} placeholder="请输入电话" autoComplete="off" />)}
652
337
  </Form.Item>
653
338
  </Col>
654
- <Col span={7} >
655
- <Form.Item label='证件号码' colon={false} validateStatus={validateStatus} help={errorInfo}>
656
- {getFieldDecorator('certificateNumber', {
657
- rules: [{ required: true, message: '数据必填' }, { max: 30, message: `内容超长` }, { validator: validateIDCode },]
658
- })(<MyInput readOnly={isReadOnly('certificateNumber')} placeholder="数据必填" autoComplete="off" />)}
339
+ <Col span={10 + leqispanW} style={{ display: isExpand ? undefined : 'none' }} >
340
+ <Form.Item label='购买方开户银行' colon={false}>
341
+ {getFieldDecorator('buyerBank', {
342
+ rules: getRules('buyerBank', RULES.bankName('购买方开户银行'))
343
+ })(<MyInput readOnly={isReadOnly('buyerBank')} placeholder="请输入购买方开户银行" autoComplete="off" />)}
659
344
  </Form.Item>
660
345
  </Col>
661
- <Col span={6} >
662
- <Form.Item label='国籍(或地区)' colon={false} validateStatus={nation} help={nationInfo}>
663
- {getFieldDecorator('nationality', {
664
- rules: [{ required: true, message: '数据必填' }, { validator: validateNationality }]
665
- })(<NationalSelect showSearch={true}
666
- optionFilterProp="children"
667
- filterOption={(input: any, option: any) => {
668
- if (option) {
669
- return option.label?.indexOf(input) >= 0;
670
- }
671
- return false;
672
- }} readOnly={isReadOnly('nationality')} placeholder="数据必填" autoComplete="off" />)}
346
+ <Col span={10 + leqispanW} style={{ display: isExpand ? undefined : 'none' }} >
347
+ <Form.Item label='购买方开户银行' colon={false}>
348
+ {getFieldDecorator('buyerBank', {
349
+ rules: getRules('buyerBank', RULES.bankName('购买方开户银行'))
350
+ })(<MyInput readOnly={isReadOnly('buyerBank')} placeholder="请输入购买方开户银行" autoComplete="off" />)}
673
351
  </Form.Item>
674
352
  </Col>
353
+
354
+ <Col span={10 + leqispanW} style={{ display: isExpand ? undefined : 'none' }} >
355
+ <Form.Item label='银行账号' colon={false}>
356
+ {getFieldDecorator('buyerAccount', {
357
+ rules: getRules('buyerAccount', RULES.bankAccount('购买方银行账号'))
358
+ })(<MyInput readOnly={isReadOnly('buyerAccount')} placeholder="请输入银行账号" autoComplete="off" />)}
359
+ </Form.Item>
360
+ </Col>
361
+ {(props.leqi || props.riskData?.code === 'success') &&
362
+ <Col span={4} style={{ display: isExpand ? undefined : 'none' }}>
363
+ <Form.Item colon={false}>
364
+ {getFieldDecorator('buyerBankAccountFlag', {
365
+ valuePropName: 'checked',
366
+ })(<Checkbox onChange={props?.invoiceMarkCallback} disabled={isReadOnly('buyerBankAccountFlag')} style={{ whiteSpace: 'nowrap' }}>是否展示</Checkbox>)}
367
+ </Form.Item>
368
+ </Col>
369
+ }
675
370
  </Row>
676
371
  </Form>
677
-
678
372
  </div>
679
- </>
373
+
374
+ </div>
680
375
  )
681
376
  })
682
377
 
@@ -783,307 +478,7 @@ class MyInput extends React.Component<InputProps> {
783
478
  }
784
479
  }
785
480
  }
786
- class CardSelect extends React.Component<any> {
787
-
788
- render() {
789
- const props = this.props;
790
- const option = [
791
-
792
- { label: "居民身份证", value: "201" },
793
- { label: "外国护照", value: "208" },
794
- { label: "港澳居民来往内地通行证", value: "210" },
795
-
796
- { label: "台湾居民来往大陆通行证", value: "213" },
797
-
798
- { label: "中国护照", value: "227" },
799
-
800
- { label: "外国人永久居留身份证", value: "233" },
801
-
802
- { label: "中华人民共和国港澳居民居住证", value: "237" },
803
- { label: "中华人民共和国台湾居民居住证", value: "238" },
804
-
805
- ];
806
- function getLable(value?: string) {
807
-
808
- return option.find(e => e.value === value)?.label || '';
809
-
810
- }
811
- if (props.readOnly) {
812
- return <span className='digtal-stakeholder-form-text'>{getLable(props.value)}</span>
813
- } else {
814
- return <Select style={{ width: 200 }} options={option} {...props} />
815
- }
816
- }
817
- }
818
- class NationalSelect extends React.Component<any> {
819
-
820
- render() {
821
- const props = this.props;
822
- const option = [
823
- { value: "156", label: "中国" },
824
- { value: "344", label: "中国香港" },
825
- { value: "158", label: "中国台湾" },
826
- { value: "446", label: "中国澳门" },
827
-
828
- { value: "004", label: "阿富汗" },
829
- { value: "008", label: "阿尔巴尼亚" },
830
- { value: "010", label: "南极洲" },
831
- { value: "012", label: "阿尔及利亚" },
832
- { value: "016", label: "美属萨摩亚" },
833
- { value: "020", label: "安道尔" },
834
- { value: "024", label: "安哥拉" },
835
- { value: "028", label: "安提瓜和巴布达" },
836
- { value: "031", label: "阿塞拜疆" },
837
- { value: "032", label: "阿根廷" },
838
- { value: "036", label: "澳大利亚" },
839
- { value: "040", label: "奥地利" },
840
- { value: "044", label: "巴哈马" },
841
- { value: "048", label: "巴林" },
842
- { value: "050", label: "孟加拉国" },
843
- { value: "051", label: "亚美尼亚" },
844
- { value: "052", label: "巴巴多斯" },
845
- { value: "056", label: "比利时" },
846
- { value: "060", label: "百慕大" },
847
- { value: "064", label: "不丹" },
848
- { value: "068", label: "玻利维亚" },
849
- { value: "070", label: "波黑" },
850
- { value: "072", label: "博茨瓦纳" },
851
- { value: "074", label: "布维岛" },
852
- { value: "076", label: "巴西" },
853
- { value: "084", label: "伯利兹" },
854
- { value: "086", label: "英属印度洋领地" },
855
- { value: "090", label: "所罗门群岛" },
856
- { value: "092", label: "英属维尔京群岛" },
857
- { value: "096", label: "文莱" },
858
- { value: "100", label: "保加利亚" },
859
- { value: "104", label: "缅甸" },
860
- { value: "108", label: "布隆迪" },
861
- { value: "112", label: "白俄罗斯" },
862
- { value: "116", label: "柬埔寨" },
863
- { value: "120", label: "喀麦隆" },
864
- { value: "124", label: "加拿大" },
865
- { value: "132", label: "佛得角" },
866
- { value: "136", label: "开曼群岛" },
867
- { value: "140", label: "中非" },
868
- { value: "144", label: "斯里兰卡" },
869
- { value: "148", label: "乍得" },
870
- { value: "152", label: "智利" },
871
481
 
872
- { value: "162", label: "圣诞岛" },
873
- { value: "166", label: "科科斯(基林)群岛" },
874
- { value: "170", label: "哥伦比亚" },
875
- { value: "174", label: "科摩罗" },
876
- { value: "175", label: "马约特" },
877
- { value: "178", label: "刚果(布)" },
878
- { value: "180", label: "刚果(金)" },
879
- { value: "184", label: "库克群岛" },
880
- { value: "188", label: "哥斯达黎加" },
881
- { value: "191", label: "克罗地亚" },
882
- { value: "192", label: "古巴" },
883
- { value: "196", label: "塞浦路斯" },
884
- { value: "203", label: "捷克" },
885
- { value: "204", label: "贝宁" },
886
- { value: "208", label: "丹麦" },
887
- { value: "212", label: "多米尼克" },
888
- { value: "214", label: "多米尼加" },
889
- { value: "218", label: "厄瓜多尔" },
890
- { value: "222", label: "萨尔瓦多" },
891
- { value: "226", label: "赤道几内亚" },
892
- { value: "231", label: "埃塞俄比亚" },
893
- { value: "232", label: "厄立特里亚" },
894
- { value: "233", label: "爱沙尼亚" },
895
- { value: "234", label: "法罗群岛" },
896
- { value: "238", label: "福克兰群岛" },
897
- { value: "239", label: "南乔治亚岛和南桑德韦奇岛" },
898
- { value: "242", label: "斐济" },
899
- { value: "246", label: "芬兰" },
900
- { value: "250", label: "法国" },
901
- { value: "254", label: "法属圭亚那" },
902
- { value: "258", label: "法属波利尼西亚" },
903
- { value: "260", label: "法属南部领地" },
904
- { value: "262", label: "吉布提" },
905
- { value: "266", label: "加蓬" },
906
- { value: "268", label: "格鲁吉亚" },
907
- { value: "270", label: "冈比亚" },
908
- { value: "275", label: "巴勒斯坦" },
909
- { value: "276", label: "德国" },
910
- { value: "288", label: "加纳" },
911
- { value: "292", label: "直布罗陀" },
912
- { value: "296", label: "基里巴斯" },
913
- { value: "300", label: "希腊" },
914
- { value: "304", label: "格陵兰" },
915
- { value: "308", label: "格林纳达" },
916
- { value: "312", label: "瓜德罗普" },
917
- { value: "316", label: "关岛" },
918
- { value: "320", label: "危地马拉" },
919
- { value: "324", label: "几内亚" },
920
- { value: "328", label: "圭亚那" },
921
- { value: "332", label: "海地" },
922
- { value: "334", label: "赫德岛和麦克唐纳岛" },
923
- { value: "336", label: "梵蒂冈" },
924
- { value: "340", label: "洪都拉斯" },
925
-
926
- { value: "348", label: "匈牙利" },
927
- { value: "352", label: "冰岛" },
928
- { value: "356", label: "印度" },
929
- { value: "360", label: "印度尼西亚" },
930
- { value: "364", label: "伊朗" },
931
- { value: "368", label: "伊拉克" },
932
- { value: "372", label: "爱尔兰" },
933
- { value: "376", label: "以色列" },
934
- { value: "380", label: "意大利" },
935
- { value: "384", label: "科特迪瓦" },
936
- { value: "388", label: "牙买加" },
937
- { value: "392", label: "日本" },
938
- { value: "398", label: "哈萨克斯坦" },
939
- { value: "400", label: "约旦" },
940
- { value: "404", label: "肯尼亚" },
941
- { value: "408", label: "朝鲜" },
942
- { value: "410", label: "韩国" },
943
- { value: "414", label: "科威特" },
944
- { value: "417", label: "吉尔吉斯斯坦" },
945
- { value: "418", label: "老挝" },
946
- { value: "422", label: "黎巴嫩" },
947
- { value: "426", label: "莱索托" },
948
- { value: "428", label: "拉脱维亚" },
949
- { value: "430", label: "利比里亚" },
950
- { value: "434", label: "利比亚" },
951
- { value: "438", label: "列支敦士登" },
952
- { value: "440", label: "立陶宛" },
953
- { value: "442", label: "卢森堡" },
954
-
955
- { value: "450", label: "马达加斯加" },
956
- { value: "454", label: "马拉维" },
957
- { value: "458", label: "马来西亚" },
958
- { value: "462", label: "马尔代夫" },
959
- { value: "466", label: "马里" },
960
- { value: "470", label: "马耳他" },
961
- { value: "474", label: "马提尼克" },
962
- { value: "478", label: "毛里塔尼亚" },
963
- { value: "480", label: "毛里求斯" },
964
- { value: "484", label: "墨西哥" },
965
- { value: "492", label: "摩纳哥" },
966
- { value: "496", label: "蒙古" },
967
- { value: "498", label: "摩尔多瓦" },
968
- { value: "499", label: "黑山" },
969
- { value: "500", label: "蒙特塞拉特" },
970
- { value: "504", label: "摩洛哥" },
971
- { value: "508", label: "莫桑比克" },
972
- { value: "512", label: "阿曼" },
973
- { value: "516", label: "纳米比亚" },
974
- { value: "520", label: "瑙鲁" },
975
- { value: "524", label: "尼泊尔" },
976
- { value: "528", label: "荷兰" },
977
- { value: "530", label: "荷属安的列斯" },
978
- { value: "533", label: "阿鲁巴" },
979
- { value: "540", label: "新喀里多尼亚" },
980
- { value: "548", label: "瓦努阿图" },
981
- { value: "554", label: "新西兰" },
982
- { value: "558", label: "尼加拉瓜" },
983
- { value: "562", label: "尼日尔" },
984
- { value: "566", label: "尼日利亚" },
985
- { value: "570", label: "纽埃" },
986
- { value: "574", label: "诺福克岛" },
987
- { value: "578", label: "挪威" },
988
- { value: "580", label: "北马里亚纳" },
989
- { value: "581", label: "美国本土外小岛屿" },
990
- { value: "583", label: "密克罗尼西亚联邦" },
991
- { value: "584", label: "马绍尔群岛" },
992
- { value: "585", label: "帕劳" },
993
- { value: "586", label: "巴基斯坦" },
994
- { value: "591", label: "巴拿马" },
995
- { value: "598", label: "巴布亚新几内亚" },
996
- { value: "600", label: "巴拉圭" },
997
- { value: "604", label: "秘鲁" },
998
- { value: "608", label: "菲律宾" },
999
- { value: "612", label: "皮特凯恩" },
1000
- { value: "616", label: "波兰" },
1001
- { value: "620", label: "葡萄牙" },
1002
- { value: "624", label: "几内亚比绍" },
1003
- { value: "626", label: "东帝汶" },
1004
- { value: "630", label: "波多黎各" },
1005
- { value: "634", label: "卡塔尔" },
1006
- { value: "638", label: "留尼汪" },
1007
- { value: "642", label: "罗马尼亚" },
1008
- { value: "643", label: "俄罗斯联邦" },
1009
- { value: "646", label: "卢旺达" },
1010
- { value: "654", label: "圣赫勒拿" },
1011
- { value: "659", label: "圣基茨和尼维斯" },
1012
- { value: "660", label: "安圭拉" },
1013
- { value: "662", label: "圣卢西亚" },
1014
- { value: "666", label: "圣皮埃尔和密克隆" },
1015
- { value: "670", label: "圣文森特和格林纳丁斯" },
1016
- { value: "674", label: "圣马力诺" },
1017
- { value: "678", label: "圣多美和普林西比" },
1018
- { value: "682", label: "沙特阿拉伯" },
1019
- { value: "686", label: "塞内加尔" },
1020
- { value: "688", label: "塞尔维亚" },
1021
- { value: "690", label: "塞舌尔" },
1022
- { value: "694", label: "塞拉利昂" },
1023
- { value: "702", label: "新加坡" },
1024
- { value: "703", label: "斯洛伐克" },
1025
- { value: "704", label: "越南" },
1026
- { value: "705", label: "斯洛文尼亚" },
1027
- { value: "706", label: "索马里" },
1028
- { value: "710", label: "南非" },
1029
- { value: "716", label: "津巴布韦" },
1030
- { value: "724", label: "西班牙" },
1031
- { value: "728", label: "南苏丹" },
1032
- { value: "732", label: "西撒哈拉" },
1033
- { value: "736", label: "苏丹" },
1034
- { value: "740", label: "苏里南" },
1035
- { value: "744", label: "斯瓦尔巴岛和扬马延岛" },
1036
- { value: "748", label: "斯威士兰" },
1037
- { value: "752", label: "瑞典" },
1038
- { value: "756", label: "瑞士" },
1039
- { value: "760", label: "叙利亚" },
1040
- { value: "762", label: "塔吉克斯坦" },
1041
- { value: "764", label: "泰国" },
1042
- { value: "768", label: "多哥" },
1043
- { value: "772", label: "托克劳" },
1044
- { value: "776", label: "汤加" },
1045
- { value: "780", label: "特立尼达和多巴哥" },
1046
- { value: "784", label: "阿联酋" },
1047
- { value: "788", label: "突尼斯" },
1048
- { value: "792", label: "土耳其" },
1049
- { value: "795", label: "土库曼斯坦" },
1050
- { value: "796", label: "特克斯和凯科斯群岛" },
1051
- { value: "798", label: "图瓦卢" },
1052
- { value: "800", label: "乌干达" },
1053
- { value: "804", label: "乌克兰" },
1054
- { value: "807", label: "前南马其顿" },
1055
- { value: "818", label: "埃及" },
1056
- { value: "826", label: "英国" },
1057
- { value: "831", label: "根西岛" },
1058
- { value: "832", label: "泽西岛" },
1059
- { value: "833", label: "马恩岛" },
1060
- { value: "834", label: "坦桑尼亚" },
1061
- { value: "840", label: "美国" },
1062
- { value: "850", label: "美属维尔京群岛" },
1063
- { value: "854", label: "布基纳法索" },
1064
- { value: "858", label: "乌拉圭" },
1065
- { value: "860", label: "乌兹别克斯坦" },
1066
- { value: "862", label: "委内瑞拉" },
1067
- { value: "876", label: "瓦利斯和富图纳" },
1068
- { value: "882", label: "萨摩亚" },
1069
- { value: "887", label: "也门" },
1070
- { value: "891", label: "南斯拉夫" },
1071
- { value: "894", label: "赞比亚" },
1072
- { value: "A00", label: "科索沃" }
1073
- ];
1074
-
1075
- function getLable(value?: string) {
1076
-
1077
- return option.find(e => e.value === value)?.label || '';
1078
-
1079
- }
1080
- if (props.readOnly) {
1081
- return <span className='digtal-stakeholder-form-text'>{getLable(props.value)}</span>
1082
- } else {
1083
- return <Select style={{ width: 100 }} options={option} {...props} />
1084
- }
1085
- }
1086
- }
1087
482
  class Discontinue {
1088
483
 
1089
484
  private static timer: any;