kts-component-invoice-operate 3.2.47 → 3.2.49

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 (200) hide show
  1. package/.dumi/theme/builtins/API.tsx +66 -66
  2. package/.editorconfig +16 -16
  3. package/.fatherrc.ts +4 -4
  4. package/.prettierignore +7 -7
  5. package/.prettierrc +11 -11
  6. package/.umirc.ts +8 -8
  7. package/README.md +5 -5
  8. package/dist/Invoice/ui/default/GoodsList/hook/useColumns/ui/ItemCodeInput/index.d.ts +0 -1
  9. package/dist/index.esm.js +5675 -7880
  10. package/dist/index.js +5675 -7880
  11. package/docs/index.md +5 -5
  12. package/docs-dist/static/arrowDown.a1cbf0d8.svg +2 -2
  13. package/docs-dist/static/arrowUp.4c482054.svg +2 -2
  14. package/docs-dist/static/fork.5431267d.svg +11 -11
  15. package/docs-dist/static/plus.44013ce3.svg +11 -11
  16. package/docs-dist/static/plus.4fd1af30.svg +11 -11
  17. package/index.html +12 -12
  18. package/package.json +60 -60
  19. package/src/Invoice/Invoice-digtal/_test/disabled/index.tsx +38 -38
  20. package/src/Invoice/Invoice-digtal/_test/easiest/index.tsx +16 -16
  21. package/src/Invoice/Invoice-digtal/_test/header/index.tsx +84 -84
  22. package/src/Invoice/Invoice-digtal/_test/importGoods/index.tsx +470 -470
  23. package/src/Invoice/Invoice-digtal/_test/importStakeholder/index.tsx +17 -17
  24. package/src/Invoice/Invoice-digtal/_test/lineCredit/index.tsx +20 -20
  25. package/src/Invoice/Invoice-digtal/_test/prefab/index.tsx +150 -150
  26. package/src/Invoice/Invoice-digtal/_test/readOnly/index.tsx +41 -41
  27. package/src/Invoice/Invoice-digtal/_test/stakeholder/index.tsx +12 -12
  28. package/src/Invoice/Invoice-digtal/_test/typeSelection/index.tsx +29 -29
  29. package/src/Invoice/Invoice-digtal/index.md +30 -30
  30. package/src/Invoice/InvoiceController/InvoiceControllerForm/index.ts +94 -94
  31. package/src/Invoice/InvoiceController/InvoiceControllerState/AutoComplete/index.ts +17 -17
  32. package/src/Invoice/InvoiceController/InvoiceControllerState/BuyerState/index.tsx +88 -88
  33. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/Drag/index.ts +12 -12
  34. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/EndowCode/index.tsx +93 -93
  35. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/IColumnsReplenish/index.ts +10 -10
  36. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/IGood/index.ts +75 -75
  37. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/ImportGoods/index.ts +80 -80
  38. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/LineAttributeType/index.ts +5 -5
  39. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/ProductComparison/index.ts +9 -9
  40. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/index.ts +107 -107
  41. package/src/Invoice/InvoiceController/InvoiceControllerState/Stakeholder/index.ts +10 -10
  42. package/src/Invoice/InvoiceController/InvoiceControllerState/index.ts +60 -60
  43. package/src/Invoice/InvoiceController/fns/addGood.ts +11 -11
  44. package/src/Invoice/InvoiceController/fns/addGoodDiscount.ts +125 -125
  45. package/src/Invoice/InvoiceController/fns/addGoodDiscountV2.ts +84 -84
  46. package/src/Invoice/InvoiceController/fns/delGood.ts +41 -41
  47. package/src/Invoice/InvoiceController/fns/getGoodsSearch.ts +26 -26
  48. package/src/Invoice/InvoiceController/fns/importGoodsDrawer.ts +67 -67
  49. package/src/Invoice/InvoiceController/fns/mergeDetails.ts +163 -161
  50. package/src/Invoice/InvoiceController/fns/mergeDiscount.ts +28 -28
  51. package/src/Invoice/InvoiceController/fns/saveEditGood.ts +24 -24
  52. package/src/Invoice/InvoiceController/fns/setEditGood.ts +16 -16
  53. package/src/Invoice/InvoiceController/fns/setGoods.ts +10 -10
  54. package/src/Invoice/InvoiceController/fns/updateInvoiceNo.ts +8 -8
  55. package/src/Invoice/InvoiceController/index.ts +77 -77
  56. package/src/Invoice/_test/buyerNameSearch/index.tsx +41 -41
  57. package/src/Invoice/_test/deduction/index.tsx +935 -935
  58. package/src/Invoice/_test/draft/index.tsx +40 -40
  59. package/src/Invoice/_test/easiest/index.tsx +5 -5
  60. package/src/Invoice/_test/endowCode/index.tsx +1099 -1099
  61. package/src/Invoice/_test/goodsMenuExpand/index.tsx +32 -32
  62. package/src/Invoice/_test/importBuyer/index.tsx +74 -74
  63. package/src/Invoice/_test/importGoods/index.tsx +515 -515
  64. package/src/Invoice/_test/invoiceType/index.tsx +59 -59
  65. package/src/Invoice/_test/isInvoiceNo/index.tsx +12 -12
  66. package/src/Invoice/_test/replaceHead/index.tsx +22 -22
  67. package/src/Invoice/_test/retrieveData/index.tsx +22 -22
  68. package/src/Invoice/_test/seller/index.tsx +28 -28
  69. package/src/Invoice/_test/setDataSource/index.tsx +73 -73
  70. package/src/Invoice/_test/unit/index.tsx +19 -19
  71. package/src/Invoice/index.less +29 -29
  72. package/src/Invoice/index.md +53 -53
  73. package/src/Invoice/index.tsx +165 -165
  74. package/src/Invoice/tools/calculate/index.ts +112 -112
  75. package/src/Invoice/tools/coolingFn/index.ts +17 -17
  76. package/src/Invoice/tools/evaluate/index.ts +7 -7
  77. package/src/Invoice/tools/idGenerator/index.ts +2 -2
  78. package/src/Invoice/tools/itemName/index.ts +55 -55
  79. package/src/Invoice/tools/lazyFn/index.ts +19 -19
  80. package/src/Invoice/tools/mounting/index.ts +13 -13
  81. package/src/Invoice/tools/strringFn/index.ts +40 -40
  82. package/src/Invoice/tools/useToGenerateId/index.ts +8 -8
  83. package/src/Invoice/ui/default/AddComparisonDrawer/index.tsx +149 -149
  84. package/src/Invoice/ui/default/Buyer/index.less +219 -219
  85. package/src/Invoice/ui/default/Buyer/index.tsx +114 -114
  86. package/src/Invoice/ui/default/Buyer/ui/BuyerNameInput/index.tsx +166 -166
  87. package/src/Invoice/ui/default/Buyer/ui/ImportBuyerButton/index.tsx +21 -21
  88. package/src/Invoice/ui/default/EndowCodeDrawer/index.less +8 -8
  89. package/src/Invoice/ui/default/EndowCodeDrawer/index.tsx +431 -431
  90. package/src/Invoice/ui/default/GoodsList/hook/useColumns/autoFillFn/index.ts +533 -533
  91. package/src/Invoice/ui/default/GoodsList/hook/useColumns/index.tsx +664 -665
  92. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/Drag/index.less +20 -20
  93. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/Drag/index.tsx +202 -202
  94. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/ItemCodeInput/index.less +18 -18
  95. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/ItemCodeInput/index.tsx +58 -56
  96. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/ItemNameInput/index.less +17 -17
  97. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/ItemNameInput/index.tsx +128 -128
  98. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowEditButton/index.tsx +30 -30
  99. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowMenu/hook/_useAddComparison/index.tsx +43 -43
  100. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowMenu/hook/useAddDiscount/index.tsx +76 -76
  101. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowMenu/hook/useDelItem/index.tsx +41 -41
  102. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowMenu/hook/useEndowCode/index.tsx +34 -34
  103. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowMenu/index.less +13 -13
  104. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowMenu/index.tsx +98 -98
  105. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowSaveButton/index.tsx +14 -14
  106. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/TitleText/index.tsx +20 -20
  107. package/src/Invoice/ui/default/GoodsList/hook/useDeduction/index.tsx +24 -24
  108. package/src/Invoice/ui/default/GoodsList/hook/useOnRow/index.tsx +39 -39
  109. package/src/Invoice/ui/default/GoodsList/hook/useRowSelection/index.tsx +111 -111
  110. package/src/Invoice/ui/default/GoodsList/hook/useWindowClick/index.tsx +23 -23
  111. package/src/Invoice/ui/default/GoodsList/index.less +177 -177
  112. package/src/Invoice/ui/default/GoodsList/index.tsx +191 -191
  113. package/src/Invoice/ui/default/GoodsList/ui/AddRowButton/index.tsx +65 -65
  114. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useAddDiscountRowButton/index.less +21 -21
  115. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useAddDiscountRowButton/index.tsx +244 -244
  116. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useCommodityComparisonButton/index.tsx +75 -75
  117. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useDelRowButton/index.tsx +69 -69
  118. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useEndowCodeButton/index.tsx +58 -58
  119. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useMergeDetails/index.tsx +37 -37
  120. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useMergeDiscount/index.tsx +36 -36
  121. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/index.tsx +37 -37
  122. package/src/Invoice/ui/default/GoodsList/ui/DescribeSwitch/index.tsx +36 -36
  123. package/src/Invoice/ui/default/GoodsList/ui/Search/index.less +10 -10
  124. package/src/Invoice/ui/default/GoodsList/ui/Search/index.tsx +52 -52
  125. package/src/Invoice/ui/default/GoodsList/ui/Statistics/index.less +18 -18
  126. package/src/Invoice/ui/default/GoodsList/ui/Statistics/index.tsx +109 -109
  127. package/src/Invoice/ui/default/GoodsList/ui/TableRow/index.less +13 -13
  128. package/src/Invoice/ui/default/GoodsList/ui/TableRow/index.tsx +46 -46
  129. package/src/Invoice/ui/default/GoodsList/ui/TableVirtual/index.less +38 -38
  130. package/src/Invoice/ui/default/GoodsList/ui/TableVirtual/index.tsx +108 -108
  131. package/src/Invoice/ui/default/GoodsList/ui/TableVirtual.o/index.less +44 -44
  132. package/src/Invoice/ui/default/GoodsList/ui/TableVirtual.o/index.tsx +96 -96
  133. package/src/Invoice/ui/default/GoodsList/ui/TaxIncludedSwitch/index.tsx +30 -30
  134. package/src/Invoice/ui/default/ImportBuyerDrawer/index.tsx +75 -75
  135. package/src/Invoice/ui/default/ImportGoodsDrawer/index.tsx +193 -193
  136. package/src/Invoice/ui/default/InvoiceHeader/index.less +68 -68
  137. package/src/Invoice/ui/default/InvoiceHeader/index.tsx +246 -246
  138. package/src/Invoice/ui/default/Seller/index.less +113 -113
  139. package/src/Invoice/ui/default/Seller/index.tsx +98 -98
  140. package/src/Invoice/ui/default/Sign/index.less +14 -14
  141. package/src/Invoice/ui/default/Sign/index.tsx +71 -71
  142. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/autoFillFn/index.ts +519 -519
  143. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/index.tsx +648 -648
  144. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/svg/plus.svg +11 -11
  145. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/Drag/index.less +20 -20
  146. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/Drag/index.tsx +186 -186
  147. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/ItemNameInput/index.less +9 -9
  148. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/ItemNameInput/index.tsx +50 -50
  149. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowEditButton/index.tsx +30 -30
  150. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowMenu/hook/_useAddComparison/index.tsx +43 -43
  151. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowMenu/hook/useAddDiscount/index.tsx +76 -76
  152. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowMenu/hook/useDelItem/index.tsx +41 -41
  153. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowMenu/hook/useEndowCode/index.tsx +34 -34
  154. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowMenu/index.less +13 -13
  155. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowMenu/index.tsx +98 -98
  156. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowSaveButton/index.tsx +14 -14
  157. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/TitleText/index.tsx +20 -20
  158. package/src/Invoice/ui/digtal/GoodsList/hook/useOnRow/index.tsx +39 -39
  159. package/src/Invoice/ui/digtal/GoodsList/hook/useRowSelection/index.tsx +121 -121
  160. package/src/Invoice/ui/digtal/GoodsList/hook/useWindowClick/index.tsx +23 -23
  161. package/src/Invoice/ui/digtal/GoodsList/index.less +56 -56
  162. package/src/Invoice/ui/digtal/GoodsList/index.tsx +180 -180
  163. package/src/Invoice/ui/digtal/GoodsList/ui/AddRowButton/index.tsx +65 -65
  164. package/src/Invoice/ui/digtal/GoodsList/ui/BulkMenu/hooks/useAddDiscountRowButton/index.tsx +341 -341
  165. package/src/Invoice/ui/digtal/GoodsList/ui/BulkMenu/hooks/useAddDiscountRowButton/svg/add.svg +11 -11
  166. package/src/Invoice/ui/digtal/GoodsList/ui/BulkMenu/hooks/useCommodityComparisonButton/index.tsx +75 -75
  167. package/src/Invoice/ui/digtal/GoodsList/ui/BulkMenu/hooks/useDelRowButton/index.tsx +50 -50
  168. package/src/Invoice/ui/digtal/GoodsList/ui/BulkMenu/hooks/useEmptyRefill/index.tsx +35 -35
  169. package/src/Invoice/ui/digtal/GoodsList/ui/BulkMenu/hooks/useEndowCodeButton/index.tsx +82 -82
  170. package/src/Invoice/ui/digtal/GoodsList/ui/BulkMenu/hooks/useReselectInvoiceType/index.tsx +57 -57
  171. package/src/Invoice/ui/digtal/GoodsList/ui/DescribeSwitch/index.tsx +36 -36
  172. package/src/Invoice/ui/digtal/GoodsList/ui/Search/index.less +11 -11
  173. package/src/Invoice/ui/digtal/GoodsList/ui/Search/index.tsx +50 -50
  174. package/src/Invoice/ui/digtal/GoodsList/ui/Statistics/index.less +53 -53
  175. package/src/Invoice/ui/digtal/GoodsList/ui/Statistics/index.tsx +99 -99
  176. package/src/Invoice/ui/digtal/GoodsList/ui/Statistics/svg/fork.svg +11 -11
  177. package/src/Invoice/ui/digtal/GoodsList/ui/TableRow/index.less +13 -13
  178. package/src/Invoice/ui/digtal/GoodsList/ui/TableRow/index.tsx +40 -40
  179. package/src/Invoice/ui/digtal/GoodsList/ui/TableVirtual/index.less +38 -38
  180. package/src/Invoice/ui/digtal/GoodsList/ui/TableVirtual/index.tsx +108 -108
  181. package/src/Invoice/ui/digtal/GoodsList/ui/TableVirtual.o/index.less +44 -44
  182. package/src/Invoice/ui/digtal/GoodsList/ui/TableVirtual.o/index.tsx +96 -96
  183. package/src/Invoice/ui/digtal/GoodsList/ui/TaxIncludedSwitch/index.tsx +30 -30
  184. package/src/Invoice/ui/digtal/InvoiceHeader/index.less +57 -57
  185. package/src/Invoice/ui/digtal/InvoiceHeader/index.tsx +77 -77
  186. package/src/Invoice/ui/digtal/Sign/index.less +48 -48
  187. package/src/Invoice/ui/digtal/Sign/index.tsx +89 -89
  188. package/src/Invoice/ui/digtal/Stakeholder/index.less +75 -75
  189. package/src/Invoice/ui/digtal/Stakeholder/index.tsx +388 -388
  190. package/src/Invoice/ui/digtal/Stakeholder/svg/arrowDown.svg +2 -2
  191. package/src/Invoice/ui/digtal/Stakeholder/svg/arrowUp.svg +2 -2
  192. package/src/Invoice/ui/digtal/Stakeholder/svg/plus.svg +11 -11
  193. package/src/InvoiceTypeModal/_test/easiest/index.tsx +31 -31
  194. package/src/InvoiceTypeModal/index.less +7 -7
  195. package/src/InvoiceTypeModal/index.md +5 -5
  196. package/src/InvoiceTypeModal/index.tsx +153 -153
  197. package/src/index.ts +9 -9
  198. package/tsconfig.json +31 -31
  199. package/typings.d.ts +3 -3
  200. package/yarn.e.lock +14331 -14331
@@ -1,75 +1,75 @@
1
- import React from 'react';
2
- import { Drawer, Table } from 'kts-components-antd-x3';
3
- import Invoice from '../../..';
4
-
5
- export default () => {
6
- const controller = Invoice.useInvoiceController();
7
-
8
- const visible = controller.useMemo((s) => s.buyerState.isVisibleDrawer, []);
9
-
10
- const topExpand = controller.useMemo((s) => s.buyerState.topExpand, []);
11
-
12
- // controller.pipeline(async s=>s.goodsListState.isTaxIncluded = true)()
13
-
14
- const onClose = React.useCallback(() => {
15
- controller.pipeline(async (s) => {
16
- s.buyerState.isVisibleDrawer = false;
17
- })();
18
- }, [controller]);
19
-
20
- return (
21
- <Drawer
22
- title="购方列表"
23
- placement="right"
24
- // closable={false}
25
- destroyOnClose={true}
26
- width={983}
27
- onClose={onClose}
28
- visible={visible}
29
- >
30
- {topExpand}
31
- <DrawerBody />
32
- </Drawer>
33
- );
34
- };
35
-
36
- const DrawerBody = () => {
37
- const controller = Invoice.useInvoiceController();
38
-
39
- const columns = controller.useMemo((e) => e.buyerState.columns, []);
40
-
41
- const dataSource = controller.useMemo((e) => e.buyerState.dataSource, []);
42
-
43
- const pagination = controller.useMemo((e) => e.buyerState.pagination, []);
44
-
45
- React.useEffect(() => {
46
- controller.getBuyerList &&
47
- controller.getBuyerList({ pagination: { current: 1 } });
48
- }, [controller]);
49
-
50
- return (
51
- <Table
52
- bordered
53
- size="small"
54
- columns={columns}
55
- dataSource={dataSource}
56
- pagination={pagination}
57
- onChange={(pagination) => {
58
- controller.getBuyerList && controller.getBuyerList({ pagination });
59
- }}
60
- onRow={(record) => {
61
- return {
62
- onClick: async () => {
63
- const re = await controller.state.buyerState.onRowClick(record);
64
- if (re) {
65
- controller.formList.get('buyer')?.setFieldsValue(re);
66
- controller.pipeline(async (s) => {
67
- s.buyerState.isVisibleDrawer = false;
68
- })();
69
- }
70
- },
71
- };
72
- }}
73
- />
74
- );
75
- };
1
+ import React from 'react';
2
+ import { Drawer, Table } from 'kts-components-antd-x3';
3
+ import Invoice from '../../..';
4
+
5
+ export default () => {
6
+ const controller = Invoice.useInvoiceController();
7
+
8
+ const visible = controller.useMemo((s) => s.buyerState.isVisibleDrawer, []);
9
+
10
+ const topExpand = controller.useMemo((s) => s.buyerState.topExpand, []);
11
+
12
+ // controller.pipeline(async s=>s.goodsListState.isTaxIncluded = true)()
13
+
14
+ const onClose = React.useCallback(() => {
15
+ controller.pipeline(async (s) => {
16
+ s.buyerState.isVisibleDrawer = false;
17
+ })();
18
+ }, [controller]);
19
+
20
+ return (
21
+ <Drawer
22
+ title="购方列表"
23
+ placement="right"
24
+ // closable={false}
25
+ destroyOnClose={true}
26
+ width={983}
27
+ onClose={onClose}
28
+ visible={visible}
29
+ >
30
+ {topExpand}
31
+ <DrawerBody />
32
+ </Drawer>
33
+ );
34
+ };
35
+
36
+ const DrawerBody = () => {
37
+ const controller = Invoice.useInvoiceController();
38
+
39
+ const columns = controller.useMemo((e) => e.buyerState.columns, []);
40
+
41
+ const dataSource = controller.useMemo((e) => e.buyerState.dataSource, []);
42
+
43
+ const pagination = controller.useMemo((e) => e.buyerState.pagination, []);
44
+
45
+ React.useEffect(() => {
46
+ controller.getBuyerList &&
47
+ controller.getBuyerList({ pagination: { current: 1 } });
48
+ }, [controller]);
49
+
50
+ return (
51
+ <Table
52
+ bordered
53
+ size="small"
54
+ columns={columns}
55
+ dataSource={dataSource}
56
+ pagination={pagination}
57
+ onChange={(pagination) => {
58
+ controller.getBuyerList && controller.getBuyerList({ pagination });
59
+ }}
60
+ onRow={(record) => {
61
+ return {
62
+ onClick: async () => {
63
+ const re = await controller.state.buyerState.onRowClick(record);
64
+ if (re) {
65
+ controller.formList.get('buyer')?.setFieldsValue(re);
66
+ controller.pipeline(async (s) => {
67
+ s.buyerState.isVisibleDrawer = false;
68
+ })();
69
+ }
70
+ },
71
+ };
72
+ }}
73
+ />
74
+ );
75
+ };
@@ -1,193 +1,193 @@
1
- import React from 'react';
2
- import { Drawer, Table } from 'kts-components-antd-x3';
3
- import Invoice from '../../..';
4
- import { updateUnitPriceExcludingTax, updateUnitPriceTax, dutyFree, format15 } from '../GoodsList/hook/useColumns/autoFillFn';
5
- import { countAmountIncludeTax } from '../../../tools/calculate'
6
- import { IGood } from '../../../InvoiceController';
7
- import evaluate from '../../../tools/evaluate';
8
-
9
- export default () => {
10
- const controller = Invoice.useInvoiceController();
11
-
12
- const visible = controller.useMemo(s => s.goodsListState.importGoods.isVisibleDrawer, []);
13
-
14
- const topExpand = controller.useMemo(s => s.goodsListState.importGoods.topExpand, []);
15
-
16
- const onClose = React.useCallback(() => {
17
- controller.pipeline(async s => { s.goodsListState.importGoods.isVisibleDrawer = false })();
18
- }, [controller]);
19
-
20
- return (
21
- <Drawer
22
- title="商品列表"
23
- placement="right"
24
- // closable={false}
25
- destroyOnClose={true}
26
- width={983}
27
- onClose={onClose}
28
- visible={visible}
29
- >
30
- {
31
- topExpand &&
32
- <div style={{ marginBottom: 10 }} >
33
- {topExpand}
34
- </div>
35
- }
36
- <DrawerBody />
37
- </Drawer>
38
- );
39
- };
40
-
41
- const DrawerBody = () => {
42
- const controller = Invoice.useInvoiceController();
43
-
44
- const columns = controller.useMemo(s => s.goodsListState.importGoods.columns, []);
45
-
46
- const dataSource = controller.useMemo(s => s.goodsListState.importGoods.dataSource, []);
47
-
48
- const pagination = controller.useMemo(s => s.goodsListState.importGoods.pagination, []);
49
-
50
- // const [editGood] = React.useState(controller.state.goodsListState.editGood);
51
-
52
- React.useEffect(() => { controller.getGoodsList && controller.getGoodsList({ pagination: { current: 1 } }) }, [controller]);
53
-
54
- return (
55
- <Table
56
- bordered
57
- size="small"
58
- columns={columns}
59
- dataSource={dataSource}
60
- pagination={pagination}
61
- onChange={pagination => { controller.getGoodsList && controller.getGoodsList({ pagination }) }}
62
- onRow={record => {
63
- return {
64
- onClick: () => {
65
- controller.run(async s => {
66
- Object.keys(record).filter(e => !record[e] && record[e] !== 0).forEach(e => { delete record[e] });
67
-
68
- // 导入时校验函数
69
- if (await s.goodsListState.importGoods.verifyFn(record) === false) return;
70
-
71
- // 没用 被编辑的货物 和 form 就退出
72
- if (!s.goodsListState.editGood || !s.goodsListState.form) return;
73
-
74
- // 导入时清空之前输入的值,使用导入的单价和税率(参考税局系统)
75
- record.quantity = undefined;
76
- record.lineAmountExcludeTax = undefined;
77
- record.lineAmountIncludeTax = undefined;
78
-
79
- // 中间数据
80
- const between = { ...record };
81
- between.itemName = getItemName(record, s.goodsListState.editGood);
82
- between.itemCode = getItemCode(record, s.goodsListState.editGood);
83
- between.itemNameOther = getItemNameOther(record, s.goodsListState.editGood);
84
-
85
- // 设置编辑货物
86
- const editGood: IGood = s.goodsListState.editGood = { ...s.goodsListState.editGood, ...between };
87
-
88
- if (editGood.taxRate) {
89
- editGood.taxRate = dutyFree(controller, editGood.taxRate, s.goodsListState.form, editGood)
90
- }
91
-
92
- if (`${editGood.priceIncludeTax}` === '0') {
93
- editGood.priceIncludeTax = undefined;
94
- editGood.priceExcludeTax = undefined;
95
- } else {
96
- editGood.priceExcludeTax = getPriceExcludeTax(editGood, record, s.calculatingDigits) as number;
97
- }
98
-
99
- if (editGood.quantity && editGood.priceIncludeTax) {
100
- editGood.lineAmountIncludeTax = countAmountIncludeTax(editGood.quantity, editGood.priceIncludeTax, s.calculatingDigits);
101
- }
102
-
103
- // 导入FORM里
104
- s.goodsListState.form.setFieldsValue({
105
- ...editGood,
106
- });
107
- // if (s.goodsListState.isMyShow) {
108
- // s.goodsListState.form.setFieldsValue({
109
- // ...editGood,
110
- // itemName: editGood.itemNameSelf,
111
- // itemModelName: editGood.itemModelNameSelf,
112
- // });
113
- // } else {
114
- // s.goodsListState.form.setFieldsValue({
115
- // ...editGood,
116
- // });
117
- // }
118
-
119
- s.goodsListState.importGoods.isVisibleDrawer = false;
120
- s.goodsListState.isTaxIncluded
121
- ? await updateUnitPriceExcludingTax(controller, s.goodsListState.form, record)
122
- : await updateUnitPriceTax(controller, s.goodsListState.form, record)
123
- })
124
- }
125
- };
126
- }}
127
- />
128
- );
129
- };
130
-
131
- /** 项目名称 */
132
- // const getItemName = (record: any) => {
133
- // return record.shorthand
134
- // ? `*${record.shorthand}*${record.itemName}`
135
- // : record.itemName;
136
- // };
137
-
138
- /** 货物单价,不含税 */
139
- const getPriceExcludeTax = (s: IGood, record: any, calculatingDigits?: number) => {
140
- if ((!s.taxRate && s.taxRate !== 0) || (!record.priceIncludeTax && record.priceIncludeTax !== 0)) return;
141
-
142
- // 单价(含税)/(1+税率) = 单价(不含税)
143
- return format15(evaluate(`${record.priceIncludeTax} / (1+${s.taxRate}/100)`), calculatingDigits);
144
- };
145
-
146
- // 获取我方名称
147
- const getItemName = (record: any, editGood: IGood) => {
148
-
149
- // let shorthand;
150
-
151
- // shorthand = record.shorthand;
152
- // if (shorthand) {
153
- // return `*${shorthand}*${record.itemName}`;
154
- // }
155
-
156
- // shorthand = getSN(editGood.itemName)?.shorthand;
157
- // if (shorthand) {
158
- // return `*${shorthand}*${record.itemNameSelf}`;
159
- // }
160
-
161
- return record.itemName;
162
- }
163
-
164
- // 获取他方名称
165
- const getItemNameOther = (record: any, editGood: IGood) => {
166
- // if (!editGood.itemName) return editGood.itemName;
167
-
168
- // let shorthand;
169
-
170
- // shorthand = record.shorthand;
171
- // if (shorthand) {
172
- // return `*${shorthand}*${record.itemNameSelf}`;
173
- // }
174
- return record.itemName;
175
- }
176
-
177
- // 获取商品编号
178
- const getItemCode = (record: any, editGood: IGood) => {
179
-
180
- // let shorthand;
181
-
182
- // shorthand = record.shorthand;
183
- // if (shorthand) {
184
- // return `*${shorthand}*${record.itemName}`;
185
- // }
186
-
187
- // shorthand = getSN(editGood.itemName)?.shorthand;
188
- // if (shorthand) {
189
- // return `*${shorthand}*${record.itemNameSelf}`;
190
- // }
191
-
192
- return record.productCode;
193
- }
1
+ import React from 'react';
2
+ import { Drawer, Table } from 'kts-components-antd-x3';
3
+ import Invoice from '../../..';
4
+ import { updateUnitPriceExcludingTax, updateUnitPriceTax, dutyFree, format15 } from '../GoodsList/hook/useColumns/autoFillFn';
5
+ import { countAmountIncludeTax } from '../../../tools/calculate'
6
+ import { IGood } from '../../../InvoiceController';
7
+ import evaluate from '../../../tools/evaluate';
8
+
9
+ export default () => {
10
+ const controller = Invoice.useInvoiceController();
11
+
12
+ const visible = controller.useMemo(s => s.goodsListState.importGoods.isVisibleDrawer, []);
13
+
14
+ const topExpand = controller.useMemo(s => s.goodsListState.importGoods.topExpand, []);
15
+
16
+ const onClose = React.useCallback(() => {
17
+ controller.pipeline(async s => { s.goodsListState.importGoods.isVisibleDrawer = false })();
18
+ }, [controller]);
19
+
20
+ return (
21
+ <Drawer
22
+ title="商品列表"
23
+ placement="right"
24
+ // closable={false}
25
+ destroyOnClose={true}
26
+ width={983}
27
+ onClose={onClose}
28
+ visible={visible}
29
+ >
30
+ {
31
+ topExpand &&
32
+ <div style={{ marginBottom: 10 }} >
33
+ {topExpand}
34
+ </div>
35
+ }
36
+ <DrawerBody />
37
+ </Drawer>
38
+ );
39
+ };
40
+
41
+ const DrawerBody = () => {
42
+ const controller = Invoice.useInvoiceController();
43
+
44
+ const columns = controller.useMemo(s => s.goodsListState.importGoods.columns, []);
45
+
46
+ const dataSource = controller.useMemo(s => s.goodsListState.importGoods.dataSource, []);
47
+
48
+ const pagination = controller.useMemo(s => s.goodsListState.importGoods.pagination, []);
49
+
50
+ // const [editGood] = React.useState(controller.state.goodsListState.editGood);
51
+
52
+ React.useEffect(() => { controller.getGoodsList && controller.getGoodsList({ pagination: { current: 1 } }) }, [controller]);
53
+
54
+ return (
55
+ <Table
56
+ bordered
57
+ size="small"
58
+ columns={columns}
59
+ dataSource={dataSource}
60
+ pagination={pagination}
61
+ onChange={pagination => { controller.getGoodsList && controller.getGoodsList({ pagination }) }}
62
+ onRow={record => {
63
+ return {
64
+ onClick: () => {
65
+ controller.run(async s => {
66
+ Object.keys(record).filter(e => !record[e] && record[e] !== 0).forEach(e => { delete record[e] });
67
+
68
+ // 导入时校验函数
69
+ if (await s.goodsListState.importGoods.verifyFn(record) === false) return;
70
+
71
+ // 没用 被编辑的货物 和 form 就退出
72
+ if (!s.goodsListState.editGood || !s.goodsListState.form) return;
73
+
74
+ // 导入时清空之前输入的值,使用导入的单价和税率(参考税局系统)
75
+ record.quantity = undefined;
76
+ record.lineAmountExcludeTax = undefined;
77
+ record.lineAmountIncludeTax = undefined;
78
+
79
+ // 中间数据
80
+ const between = { ...record };
81
+ between.itemName = getItemName(record, s.goodsListState.editGood);
82
+ between.itemCode = getItemCode(record, s.goodsListState.editGood);
83
+ between.itemNameOther = getItemNameOther(record, s.goodsListState.editGood);
84
+
85
+ // 设置编辑货物
86
+ const editGood: IGood = s.goodsListState.editGood = { ...s.goodsListState.editGood, ...between };
87
+
88
+ if (editGood.taxRate) {
89
+ editGood.taxRate = dutyFree(controller, editGood.taxRate, s.goodsListState.form, editGood)
90
+ }
91
+
92
+ if (`${editGood.priceIncludeTax}` === '0') {
93
+ editGood.priceIncludeTax = undefined;
94
+ editGood.priceExcludeTax = undefined;
95
+ } else {
96
+ editGood.priceExcludeTax = getPriceExcludeTax(editGood, record, s.calculatingDigits) as number;
97
+ }
98
+
99
+ if (editGood.quantity && editGood.priceIncludeTax) {
100
+ editGood.lineAmountIncludeTax = countAmountIncludeTax(editGood.quantity, editGood.priceIncludeTax, s.calculatingDigits);
101
+ }
102
+
103
+ // 导入FORM里
104
+ s.goodsListState.form.setFieldsValue({
105
+ ...editGood,
106
+ });
107
+ // if (s.goodsListState.isMyShow) {
108
+ // s.goodsListState.form.setFieldsValue({
109
+ // ...editGood,
110
+ // itemName: editGood.itemNameSelf,
111
+ // itemModelName: editGood.itemModelNameSelf,
112
+ // });
113
+ // } else {
114
+ // s.goodsListState.form.setFieldsValue({
115
+ // ...editGood,
116
+ // });
117
+ // }
118
+
119
+ s.goodsListState.importGoods.isVisibleDrawer = false;
120
+ s.goodsListState.isTaxIncluded
121
+ ? await updateUnitPriceExcludingTax(controller, s.goodsListState.form, record)
122
+ : await updateUnitPriceTax(controller, s.goodsListState.form, record)
123
+ })
124
+ }
125
+ };
126
+ }}
127
+ />
128
+ );
129
+ };
130
+
131
+ /** 项目名称 */
132
+ // const getItemName = (record: any) => {
133
+ // return record.shorthand
134
+ // ? `*${record.shorthand}*${record.itemName}`
135
+ // : record.itemName;
136
+ // };
137
+
138
+ /** 货物单价,不含税 */
139
+ const getPriceExcludeTax = (s: IGood, record: any, calculatingDigits?: number) => {
140
+ if ((!s.taxRate && s.taxRate !== 0) || (!record.priceIncludeTax && record.priceIncludeTax !== 0)) return;
141
+
142
+ // 单价(含税)/(1+税率) = 单价(不含税)
143
+ return format15(evaluate(`${record.priceIncludeTax} / (1+${s.taxRate}/100)`), calculatingDigits);
144
+ };
145
+
146
+ // 获取我方名称
147
+ const getItemName = (record: any, editGood: IGood) => {
148
+
149
+ // let shorthand;
150
+
151
+ // shorthand = record.shorthand;
152
+ // if (shorthand) {
153
+ // return `*${shorthand}*${record.itemName}`;
154
+ // }
155
+
156
+ // shorthand = getSN(editGood.itemName)?.shorthand;
157
+ // if (shorthand) {
158
+ // return `*${shorthand}*${record.itemNameSelf}`;
159
+ // }
160
+
161
+ return record.itemName;
162
+ }
163
+
164
+ // 获取他方名称
165
+ const getItemNameOther = (record: any, editGood: IGood) => {
166
+ // if (!editGood.itemName) return editGood.itemName;
167
+
168
+ // let shorthand;
169
+
170
+ // shorthand = record.shorthand;
171
+ // if (shorthand) {
172
+ // return `*${shorthand}*${record.itemNameSelf}`;
173
+ // }
174
+ return record.itemName;
175
+ }
176
+
177
+ // 获取商品编号
178
+ const getItemCode = (record: any, editGood: IGood) => {
179
+
180
+ // let shorthand;
181
+
182
+ // shorthand = record.shorthand;
183
+ // if (shorthand) {
184
+ // return `*${shorthand}*${record.itemName}`;
185
+ // }
186
+
187
+ // shorthand = getSN(editGood.itemName)?.shorthand;
188
+ // if (shorthand) {
189
+ // return `*${shorthand}*${record.itemNameSelf}`;
190
+ // }
191
+
192
+ return record.productCode;
193
+ }
@@ -1,69 +1,69 @@
1
- .kts-invoice-operate-invoice-header {
2
- padding : 20px 8px;
3
- background : #f6f7f9;
4
- position : relative;
5
- color : rgba(0, 0, 0, 0.85);
6
- font-weight: 500;
7
-
8
- label {
9
- margin-right: 5px;
10
- white-space : nowrap;
11
- }
12
-
13
- .invoice-header-title {
14
- top : 20px;
15
- left : 0;
16
- position : absolute;
17
- color : #e28b89;
18
- font-weight : 500;
19
- font-size : 22px;
20
- text-align : center;
21
- width : 100%;
22
- pointer-events: none;
23
- z-index : 1;
24
- }
25
-
26
- .invoice-header-no {
27
- display: flex;
28
-
29
- .ktsAnt3x-tag {
30
- margin-left: 10px;
31
- height : 24px;
32
- }
33
- }
34
-
35
- .invoice-header-type {
36
- flex : 1;
37
- text-align: right;
38
- }
39
-
40
-
41
- .invoice-header-property {
42
- margin: 20px 0 0;
43
-
44
- .ktsAnt3x-col {
45
- display : flex;
46
- flex-direction: inherit;
47
- padding-right : 20px;
48
-
49
- span {
50
- color: #999;
51
- }
52
- }
53
- }
54
-
55
- .invoice-header-property-fieldExpand {
56
- display : flex;
57
- margin : 0;
58
- padding : 0;
59
- list-style-type: none;
60
- gap : 10px;
61
- align-items : center;
62
-
63
- li {
64
- display : flex;
65
- align-items: center;
66
- flex : 1;
67
- }
68
- }
1
+ .kts-invoice-operate-invoice-header {
2
+ padding : 20px 8px;
3
+ background : #f6f7f9;
4
+ position : relative;
5
+ color : rgba(0, 0, 0, 0.85);
6
+ font-weight: 500;
7
+
8
+ label {
9
+ margin-right: 5px;
10
+ white-space : nowrap;
11
+ }
12
+
13
+ .invoice-header-title {
14
+ top : 20px;
15
+ left : 0;
16
+ position : absolute;
17
+ color : #e28b89;
18
+ font-weight : 500;
19
+ font-size : 22px;
20
+ text-align : center;
21
+ width : 100%;
22
+ pointer-events: none;
23
+ z-index : 1;
24
+ }
25
+
26
+ .invoice-header-no {
27
+ display: flex;
28
+
29
+ .ktsAnt3x-tag {
30
+ margin-left: 10px;
31
+ height : 24px;
32
+ }
33
+ }
34
+
35
+ .invoice-header-type {
36
+ flex : 1;
37
+ text-align: right;
38
+ }
39
+
40
+
41
+ .invoice-header-property {
42
+ margin: 20px 0 0;
43
+
44
+ .ktsAnt3x-col {
45
+ display : flex;
46
+ flex-direction: inherit;
47
+ padding-right : 20px;
48
+
49
+ span {
50
+ color: #999;
51
+ }
52
+ }
53
+ }
54
+
55
+ .invoice-header-property-fieldExpand {
56
+ display : flex;
57
+ margin : 0;
58
+ padding : 0;
59
+ list-style-type: none;
60
+ gap : 10px;
61
+ align-items : center;
62
+
63
+ li {
64
+ display : flex;
65
+ align-items: center;
66
+ flex : 1;
67
+ }
68
+ }
69
69
  }