kts-component-invoice-operate 3.2.243 → 3.2.245

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 (302) 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/BRANCH.md +5 -0
  8. package/README.md +12 -12
  9. package/branch/3.2.x +1 -0
  10. package/dist/Invoice/Invoice-digtal/_test/pay/index.d.ts +4 -0
  11. package/dist/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/IGood/index.d.ts +1 -0
  12. package/dist/Invoice/InvoiceController/InvoiceControllerState/PayListState/IColumnsReplenish/index.d.ts +6 -0
  13. package/dist/Invoice/InvoiceController/InvoiceControllerState/PayListState/IGood/index.d.ts +12 -0
  14. package/dist/Invoice/InvoiceController/InvoiceControllerState/PayListState/ImportGoods/index.d.ts +21 -0
  15. package/dist/Invoice/InvoiceController/InvoiceControllerState/PayListState/index.d.ts +31 -0
  16. package/dist/Invoice/InvoiceController/InvoiceControllerState/index.d.ts +2 -0
  17. package/dist/Invoice/InvoiceController/fns/addPay.d.ts +6 -0
  18. package/dist/Invoice/InvoiceController/fns/delPay.d.ts +6 -0
  19. package/dist/Invoice/InvoiceController/fns/saveEditPay.d.ts +6 -0
  20. package/dist/Invoice/InvoiceController/fns/setEditPay.d.ts +6 -0
  21. package/dist/Invoice/InvoiceController/fns/setPay.d.ts +6 -0
  22. package/dist/Invoice/InvoiceController/index.d.ts +6 -0
  23. package/dist/Invoice/index.d.ts +2 -0
  24. package/dist/Invoice/ui/digtal/PayList/hook/useColumns/index.d.ts +3 -0
  25. package/dist/Invoice/ui/digtal/PayList/hook/useColumns/ui/TitleText/index.d.ts +8 -0
  26. package/dist/Invoice/ui/digtal/PayList/hook/useOnRow/index.d.ts +8 -0
  27. package/dist/Invoice/ui/digtal/PayList/hook/useRowSelection/index.d.ts +8 -0
  28. package/dist/Invoice/ui/digtal/PayList/hook/useWindowClick/index.d.ts +5 -0
  29. package/dist/Invoice/ui/digtal/PayList/index.d.ts +18 -0
  30. package/dist/Invoice/ui/digtal/PayList/ui/AddRowButton/index.d.ts +3 -0
  31. package/dist/Invoice/ui/digtal/PayList/ui/BulkMenu/hooks/useDelRowButton/index.d.ts +6 -0
  32. package/dist/Invoice/ui/digtal/PayList/ui/BulkMenu/hooks/useEmptyRefill/index.d.ts +6 -0
  33. package/dist/Invoice/ui/digtal/PayList/ui/TableRow/index.d.ts +3 -0
  34. package/dist/Invoice/ui/digtal/PayList/ui/TableVirtual/index.d.ts +4 -0
  35. package/dist/Invoice/ui/digtal/StakeFarmerholder/index.d.ts +2 -0
  36. package/dist/index.esm.js +8765 -5735
  37. package/dist/index.js +8764 -5734
  38. package/docs/index.md +5 -5
  39. package/docs-dist/404.html +33 -33
  40. package/docs-dist/index.html +33 -33
  41. package/docs-dist/static/arrowDown.a1cbf0d8.svg +2 -2
  42. package/docs-dist/static/arrowUp.4c482054.svg +2 -2
  43. package/docs-dist/static/fork.5431267d.svg +11 -11
  44. package/docs-dist/static/plus.44013ce3.svg +11 -11
  45. package/docs-dist/static/plus.4fd1af30.svg +11 -11
  46. package/docs-dist/umi.css +18 -18
  47. package/index.html +12 -12
  48. package/package.json +62 -62
  49. package/src/Invoice/Invoice-digtal/_test/architecture/index.tsx +21 -21
  50. package/src/Invoice/Invoice-digtal/_test/disabled/index.tsx +40 -40
  51. package/src/Invoice/Invoice-digtal/_test/easiest/index.tsx +214 -182
  52. package/src/Invoice/Invoice-digtal/_test/freight/index.tsx +14580 -14574
  53. package/src/Invoice/Invoice-digtal/_test/header/index.tsx +84 -84
  54. package/src/Invoice/Invoice-digtal/_test/importGoods/index.tsx +868 -868
  55. package/src/Invoice/Invoice-digtal/_test/importStakeholder/index.tsx +18 -18
  56. package/src/Invoice/Invoice-digtal/_test/lineCredit/index.tsx +19 -19
  57. package/src/Invoice/Invoice-digtal/_test/pay/index.tsx +14637 -0
  58. package/src/Invoice/Invoice-digtal/_test/prefab/index.tsx +150 -150
  59. package/src/Invoice/Invoice-digtal/_test/readOnly/index.tsx +55 -55
  60. package/src/Invoice/Invoice-digtal/_test/realEstateInfo/index.tsx +83 -36
  61. package/src/Invoice/Invoice-digtal/_test/stakeholder/index.tsx +12 -12
  62. package/src/Invoice/Invoice-digtal/_test/typeSelection/index.tsx +29 -29
  63. package/src/Invoice/Invoice-digtal/index.md +44 -43
  64. package/src/Invoice/InvoiceController/InvoiceControllerForm/index.ts +116 -105
  65. package/src/Invoice/InvoiceController/InvoiceControllerState/AutoComplete/index.ts +26 -26
  66. package/src/Invoice/InvoiceController/InvoiceControllerState/BuyerState/index.tsx +88 -88
  67. package/src/Invoice/InvoiceController/InvoiceControllerState/FreightListState/IColumnsReplenish/index.ts +10 -10
  68. package/src/Invoice/InvoiceController/InvoiceControllerState/FreightListState/IGood/index.ts +33 -33
  69. package/src/Invoice/InvoiceController/InvoiceControllerState/FreightListState/ImportGoods/index.ts +81 -81
  70. package/src/Invoice/InvoiceController/InvoiceControllerState/FreightListState/index.ts +39 -39
  71. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/Drag/index.ts +15 -15
  72. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/EndowCode/index.tsx +104 -104
  73. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/IColumnsReplenish/index.ts +10 -10
  74. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/IGood/index.ts +91 -89
  75. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/ImportGoods/index.ts +84 -84
  76. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/LineAttributeType/index.ts +7 -7
  77. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/ProductComparison/index.ts +9 -9
  78. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/index.ts +134 -134
  79. package/src/Invoice/InvoiceController/InvoiceControllerState/PayListState/IColumnsReplenish/index.ts +10 -0
  80. package/src/Invoice/InvoiceController/InvoiceControllerState/PayListState/IGood/index.ts +35 -0
  81. package/src/Invoice/InvoiceController/InvoiceControllerState/PayListState/ImportGoods/index.ts +81 -0
  82. package/src/Invoice/InvoiceController/InvoiceControllerState/PayListState/index.ts +40 -0
  83. package/src/Invoice/InvoiceController/InvoiceControllerState/Stakeholder/index.ts +13 -13
  84. package/src/Invoice/InvoiceController/InvoiceControllerState/index.ts +76 -73
  85. package/src/Invoice/InvoiceController/fns/addFreight.ts +11 -11
  86. package/src/Invoice/InvoiceController/fns/addGood.ts +11 -11
  87. package/src/Invoice/InvoiceController/fns/addGoodDiscount.ts +126 -126
  88. package/src/Invoice/InvoiceController/fns/addGoodDiscountV2.ts +86 -86
  89. package/src/Invoice/InvoiceController/fns/addPay.ts +11 -0
  90. package/src/Invoice/InvoiceController/fns/delFreight.ts +38 -38
  91. package/src/Invoice/InvoiceController/fns/delGood.ts +41 -41
  92. package/src/Invoice/InvoiceController/fns/delPay.ts +38 -0
  93. package/src/Invoice/InvoiceController/fns/getGoodsSearch.ts +26 -26
  94. package/src/Invoice/InvoiceController/fns/importGoodsDrawer.ts +79 -79
  95. package/src/Invoice/InvoiceController/fns/itemBlur.ts +40 -40
  96. package/src/Invoice/InvoiceController/fns/mergeDetails.ts +201 -201
  97. package/src/Invoice/InvoiceController/fns/mergeDiscount.ts +35 -35
  98. package/src/Invoice/InvoiceController/fns/saveEditFreight.ts +24 -24
  99. package/src/Invoice/InvoiceController/fns/saveEditGood.ts +24 -24
  100. package/src/Invoice/InvoiceController/fns/saveEditPay.ts +23 -0
  101. package/src/Invoice/InvoiceController/fns/setEditFreight.ts +16 -16
  102. package/src/Invoice/InvoiceController/fns/setEditGood.ts +16 -16
  103. package/src/Invoice/InvoiceController/fns/setEditPay.ts +16 -0
  104. package/src/Invoice/InvoiceController/fns/setFreight.ts +10 -10
  105. package/src/Invoice/InvoiceController/fns/setGoods.ts +10 -10
  106. package/src/Invoice/InvoiceController/fns/setPay.ts +11 -0
  107. package/src/Invoice/InvoiceController/fns/updateInvoiceNo.ts +8 -8
  108. package/src/Invoice/InvoiceController/index.ts +127 -106
  109. package/src/Invoice/_test/buyerNameSearch/index.tsx +42 -42
  110. package/src/Invoice/_test/children/index.tsx +214 -214
  111. package/src/Invoice/_test/deduction/index.tsx +957 -957
  112. package/src/Invoice/_test/draft/index.tsx +40 -40
  113. package/src/Invoice/_test/easiest/index.tsx +5 -5
  114. package/src/Invoice/_test/endowCode/index.tsx +1158 -1158
  115. package/src/Invoice/_test/goodsMenuExpand/index.tsx +32 -32
  116. package/src/Invoice/_test/importBuyer/index.tsx +74 -74
  117. package/src/Invoice/_test/importGoods/index.tsx +1197 -1197
  118. package/src/Invoice/_test/invoiceType/index.tsx +59 -59
  119. package/src/Invoice/_test/isInvoiceNo/index.tsx +12 -12
  120. package/src/Invoice/_test/replaceHead/index.tsx +22 -22
  121. package/src/Invoice/_test/retrieveData/index.tsx +22 -22
  122. package/src/Invoice/_test/seller/index.tsx +28 -28
  123. package/src/Invoice/_test/setDataSource/index.tsx +73 -73
  124. package/src/Invoice/_test/unit/index.tsx +19 -19
  125. package/src/Invoice/index.less +31 -31
  126. package/src/Invoice/index.md +56 -56
  127. package/src/Invoice/index.tsx +200 -197
  128. package/src/Invoice/tools/calculate/index.ts +144 -144
  129. package/src/Invoice/tools/coolingFn/index.ts +17 -17
  130. package/src/Invoice/tools/evaluate/index.ts +7 -7
  131. package/src/Invoice/tools/idGenerator/index.ts +2 -2
  132. package/src/Invoice/tools/itemName/index.ts +55 -55
  133. package/src/Invoice/tools/lazyFn/index.ts +19 -19
  134. package/src/Invoice/tools/mounting/index.ts +13 -13
  135. package/src/Invoice/tools/strringFn/index.ts +40 -40
  136. package/src/Invoice/tools/useToGenerateId/index.ts +12 -10
  137. package/src/Invoice/tools/utils/index.ts +1 -1
  138. package/src/Invoice/tools/utils/money/index.ts +20 -20
  139. package/src/Invoice/ui/default/AddComparisonDrawer/index.tsx +149 -149
  140. package/src/Invoice/ui/default/Buyer/index.less +219 -219
  141. package/src/Invoice/ui/default/Buyer/index.tsx +114 -114
  142. package/src/Invoice/ui/default/Buyer/ui/BuyerNameInput/index.tsx +166 -166
  143. package/src/Invoice/ui/default/Buyer/ui/ImportBuyerButton/index.tsx +21 -21
  144. package/src/Invoice/ui/default/EndowCodeDrawer/index.less +8 -8
  145. package/src/Invoice/ui/default/EndowCodeDrawer/index.tsx +612 -612
  146. package/src/Invoice/ui/default/GoodsList/hook/useColumns/autoFillFn/index.ts +647 -647
  147. package/src/Invoice/ui/default/GoodsList/hook/useColumns/index.tsx +719 -719
  148. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/Drag/index.less +20 -20
  149. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/Drag/index.tsx +205 -205
  150. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/Expand/index.tsx +57 -57
  151. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/ItemCodeInput/index.less +18 -18
  152. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/ItemCodeInput/index.tsx +49 -49
  153. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/ItemNameInput/index.less +17 -17
  154. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/ItemNameInput/index.tsx +91 -91
  155. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowEditButton/index.tsx +30 -30
  156. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowMenu/hook/_useAddComparison/index.tsx +43 -43
  157. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowMenu/hook/useAddDiscount/index.tsx +118 -118
  158. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowMenu/hook/useDelItem/dist/index.js +32 -32
  159. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowMenu/hook/useDelItem/index.tsx +41 -41
  160. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowMenu/hook/useEndowCode/index.tsx +25 -25
  161. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowMenu/index.less +13 -13
  162. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowMenu/index.tsx +99 -99
  163. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowSaveButton/index.tsx +14 -14
  164. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/TitleText/index.tsx +20 -20
  165. package/src/Invoice/ui/default/GoodsList/hook/useDeduction/index.tsx +24 -24
  166. package/src/Invoice/ui/default/GoodsList/hook/useOnRow/index.tsx +52 -52
  167. package/src/Invoice/ui/default/GoodsList/hook/useRowSelection/index.tsx +120 -120
  168. package/src/Invoice/ui/default/GoodsList/hook/useWindowClick/index.tsx +23 -23
  169. package/src/Invoice/ui/default/GoodsList/index.less +185 -185
  170. package/src/Invoice/ui/default/GoodsList/index.tsx +207 -207
  171. package/src/Invoice/ui/default/GoodsList/ui/AddRowButton/index.tsx +72 -72
  172. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useAddDiscountRowButton/index.less +21 -21
  173. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useAddDiscountRowButton/index.tsx +244 -244
  174. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useCommodityComparisonButton/index.tsx +75 -75
  175. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useDelRowButton/index.tsx +69 -69
  176. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useEndowCodeButton/index.tsx +65 -65
  177. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useMergeDetails/index.tsx +91 -91
  178. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useMergeDiscount/index.tsx +36 -36
  179. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useSalesDiscount/index.tsx +109 -109
  180. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useSalesGifts/index.tsx +94 -94
  181. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/index.tsx +37 -37
  182. package/src/Invoice/ui/default/GoodsList/ui/DescribeSwitch/index.tsx +36 -36
  183. package/src/Invoice/ui/default/GoodsList/ui/Search/index.less +10 -10
  184. package/src/Invoice/ui/default/GoodsList/ui/Search/index.tsx +52 -52
  185. package/src/Invoice/ui/default/GoodsList/ui/Statistics/index.less +18 -18
  186. package/src/Invoice/ui/default/GoodsList/ui/Statistics/index.tsx +114 -114
  187. package/src/Invoice/ui/default/GoodsList/ui/TableRow/index.less +40 -40
  188. package/src/Invoice/ui/default/GoodsList/ui/TableRow/index.tsx +71 -71
  189. package/src/Invoice/ui/default/GoodsList/ui/TableVirtual/index.less +38 -38
  190. package/src/Invoice/ui/default/GoodsList/ui/TableVirtual/index.tsx +130 -130
  191. package/src/Invoice/ui/default/GoodsList/ui/TableVirtual.o/index.less +44 -44
  192. package/src/Invoice/ui/default/GoodsList/ui/TableVirtual.o/index.tsx +96 -96
  193. package/src/Invoice/ui/default/GoodsList/ui/TaxIncludedSwitch/index.tsx +31 -31
  194. package/src/Invoice/ui/default/ImportBuyerDrawer/index.tsx +75 -75
  195. package/src/Invoice/ui/default/ImportGoodsDrawer/index.tsx +201 -201
  196. package/src/Invoice/ui/default/InvoiceHeader/index.less +68 -68
  197. package/src/Invoice/ui/default/InvoiceHeader/index.tsx +246 -246
  198. package/src/Invoice/ui/default/Seller/index.less +113 -113
  199. package/src/Invoice/ui/default/Seller/index.tsx +98 -98
  200. package/src/Invoice/ui/default/Sign/index.less +14 -14
  201. package/src/Invoice/ui/default/Sign/index.tsx +71 -71
  202. package/src/Invoice/ui/digtal/Architecture/index.less +18 -18
  203. package/src/Invoice/ui/digtal/Architecture/index.tsx +177 -177
  204. package/src/Invoice/ui/digtal/FreightList/hook/useColumns/dist/index.js +616 -616
  205. package/src/Invoice/ui/digtal/FreightList/hook/useColumns/index.tsx +246 -246
  206. package/src/Invoice/ui/digtal/FreightList/hook/useColumns/ui/TitleText/index.tsx +20 -20
  207. package/src/Invoice/ui/digtal/FreightList/hook/useOnRow/index.tsx +37 -37
  208. package/src/Invoice/ui/digtal/FreightList/hook/useRowSelection/index.tsx +119 -119
  209. package/src/Invoice/ui/digtal/FreightList/hook/useWindowClick/index.tsx +23 -23
  210. package/src/Invoice/ui/digtal/FreightList/index.less +72 -72
  211. package/src/Invoice/ui/digtal/FreightList/index.tsx +129 -129
  212. package/src/Invoice/ui/digtal/FreightList/ui/AddRowButton/index.tsx +74 -74
  213. package/src/Invoice/ui/digtal/FreightList/ui/BulkMenu/hooks/useDelRowButton/index.tsx +50 -50
  214. package/src/Invoice/ui/digtal/FreightList/ui/BulkMenu/hooks/useEmptyRefill/index.tsx +36 -36
  215. package/src/Invoice/ui/digtal/FreightList/ui/TableRow/index.less +28 -28
  216. package/src/Invoice/ui/digtal/FreightList/ui/TableRow/index.tsx +20 -20
  217. package/src/Invoice/ui/digtal/FreightList/ui/TableVirtual/index.less +38 -38
  218. package/src/Invoice/ui/digtal/FreightList/ui/TableVirtual/index.tsx +108 -108
  219. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/autoFillFn/index.ts +683 -683
  220. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/dist/index.js +616 -616
  221. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/index.tsx +724 -724
  222. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/svg/plus.svg +11 -11
  223. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/Drag/index.less +20 -20
  224. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/Drag/index.tsx +205 -205
  225. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/ItemNameInput/index.less +9 -9
  226. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/ItemNameInput/index.tsx +87 -87
  227. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowEditButton/index.tsx +30 -30
  228. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowMenu/hook/_useAddComparison/index.tsx +43 -43
  229. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowMenu/hook/useAddDiscount/index.tsx +76 -76
  230. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowMenu/hook/useDelItem/index.tsx +41 -41
  231. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowMenu/hook/useEndowCode/index.tsx +34 -34
  232. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowMenu/index.less +13 -13
  233. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowMenu/index.tsx +98 -98
  234. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowSaveButton/index.tsx +14 -14
  235. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/TitleText/index.tsx +20 -20
  236. package/src/Invoice/ui/digtal/GoodsList/hook/useOnRow/index.tsx +51 -51
  237. package/src/Invoice/ui/digtal/GoodsList/hook/useRowSelection/index.tsx +121 -121
  238. package/src/Invoice/ui/digtal/GoodsList/hook/useWindowClick/index.tsx +23 -23
  239. package/src/Invoice/ui/digtal/GoodsList/index.less +56 -56
  240. package/src/Invoice/ui/digtal/GoodsList/index.tsx +181 -181
  241. package/src/Invoice/ui/digtal/GoodsList/ui/AddRowButton/index.tsx +87 -87
  242. package/src/Invoice/ui/digtal/GoodsList/ui/BulkMenu/hooks/useAddDiscountRowButton/index.tsx +340 -340
  243. package/src/Invoice/ui/digtal/GoodsList/ui/BulkMenu/hooks/useAddDiscountRowButton/svg/add.svg +11 -11
  244. package/src/Invoice/ui/digtal/GoodsList/ui/BulkMenu/hooks/useCommodityComparisonButton/index.tsx +75 -75
  245. package/src/Invoice/ui/digtal/GoodsList/ui/BulkMenu/hooks/useDelRowButton/index.tsx +50 -50
  246. package/src/Invoice/ui/digtal/GoodsList/ui/BulkMenu/hooks/useEmptyRefill/index.tsx +37 -37
  247. package/src/Invoice/ui/digtal/GoodsList/ui/BulkMenu/hooks/useEndowCodeButton/index.tsx +82 -82
  248. package/src/Invoice/ui/digtal/GoodsList/ui/BulkMenu/hooks/useReselectInvoiceType/index.tsx +57 -57
  249. package/src/Invoice/ui/digtal/GoodsList/ui/DescribeSwitch/index.tsx +36 -36
  250. package/src/Invoice/ui/digtal/GoodsList/ui/Search/index.less +11 -11
  251. package/src/Invoice/ui/digtal/GoodsList/ui/Search/index.tsx +60 -60
  252. package/src/Invoice/ui/digtal/GoodsList/ui/Statistics/index.less +53 -53
  253. package/src/Invoice/ui/digtal/GoodsList/ui/Statistics/index.tsx +98 -98
  254. package/src/Invoice/ui/digtal/GoodsList/ui/Statistics/svg/fork.svg +11 -11
  255. package/src/Invoice/ui/digtal/GoodsList/ui/TableRow/index.less +28 -28
  256. package/src/Invoice/ui/digtal/GoodsList/ui/TableRow/index.tsx +52 -52
  257. package/src/Invoice/ui/digtal/GoodsList/ui/TableVirtual/index.less +38 -38
  258. package/src/Invoice/ui/digtal/GoodsList/ui/TableVirtual/index.tsx +113 -113
  259. package/src/Invoice/ui/digtal/GoodsList/ui/TaxIncludedSwitch/index.tsx +34 -34
  260. package/src/Invoice/ui/digtal/InvoiceHeader/index.less +57 -57
  261. package/src/Invoice/ui/digtal/InvoiceHeader/index.tsx +77 -77
  262. package/src/Invoice/ui/digtal/PayList/hook/useColumns/dist/index.js +616 -0
  263. package/src/Invoice/ui/digtal/PayList/hook/useColumns/index.tsx +168 -0
  264. package/src/Invoice/ui/digtal/PayList/hook/useColumns/ui/TitleText/index.tsx +20 -0
  265. package/src/Invoice/ui/digtal/PayList/hook/useOnRow/index.tsx +37 -0
  266. package/src/Invoice/ui/digtal/PayList/hook/useRowSelection/index.tsx +120 -0
  267. package/src/Invoice/ui/digtal/PayList/hook/useWindowClick/index.tsx +19 -0
  268. package/src/Invoice/ui/digtal/PayList/index.less +73 -0
  269. package/src/Invoice/ui/digtal/PayList/index.tsx +132 -0
  270. package/src/Invoice/ui/digtal/PayList/ui/AddRowButton/index.tsx +75 -0
  271. package/src/Invoice/ui/digtal/PayList/ui/BulkMenu/hooks/useDelRowButton/index.tsx +50 -0
  272. package/src/Invoice/ui/digtal/PayList/ui/BulkMenu/hooks/useEmptyRefill/index.tsx +37 -0
  273. package/src/Invoice/ui/digtal/PayList/ui/TableRow/index.less +29 -0
  274. package/src/Invoice/ui/digtal/PayList/ui/TableRow/index.tsx +21 -0
  275. package/src/Invoice/ui/digtal/PayList/ui/TableVirtual/index.less +39 -0
  276. package/src/Invoice/ui/digtal/PayList/ui/TableVirtual/index.tsx +109 -0
  277. package/src/Invoice/ui/digtal/RealEstateInfo/index.less +21 -21
  278. package/src/Invoice/ui/digtal/RealEstateInfo/index.tsx +451 -242
  279. package/src/Invoice/ui/digtal/Sign/index.less +48 -48
  280. package/src/Invoice/ui/digtal/Sign/index.tsx +99 -99
  281. package/src/Invoice/ui/digtal/StakeFarmerholder/index.less +99 -99
  282. package/src/Invoice/ui/digtal/StakeFarmerholder/index.tsx +1102 -491
  283. package/src/Invoice/ui/digtal/StakeFarmerholder/svg/arrowDown.svg +2 -2
  284. package/src/Invoice/ui/digtal/StakeFarmerholder/svg/arrowUp.svg +2 -2
  285. package/src/Invoice/ui/digtal/StakeFarmerholder/svg/plus.svg +11 -11
  286. package/src/Invoice/ui/digtal/Stakeholder/index.less +99 -99
  287. package/src/Invoice/ui/digtal/Stakeholder/index.tsx +453 -453
  288. package/src/Invoice/ui/digtal/Stakeholder/svg/arrowDown.svg +2 -2
  289. package/src/Invoice/ui/digtal/Stakeholder/svg/arrowUp.svg +2 -2
  290. package/src/Invoice/ui/digtal/Stakeholder/svg/plus.svg +11 -11
  291. package/src/InvoiceTypeModal/_test/easiest/index.tsx +31 -31
  292. package/src/InvoiceTypeModal/dist/index.js +92 -92
  293. package/src/InvoiceTypeModal/index.less +7 -7
  294. package/src/InvoiceTypeModal/index.md +5 -5
  295. package/src/InvoiceTypeModal/index.tsx +161 -161
  296. package/src/TaxClassificationCodeModal/_test/easiest/index.tsx +184 -184
  297. package/src/TaxClassificationCodeModal/index.less +17 -17
  298. package/src/TaxClassificationCodeModal/index.md +6 -6
  299. package/src/TaxClassificationCodeModal/index.tsx +152 -152
  300. package/src/index.ts +13 -13
  301. package/tsconfig.json +31 -31
  302. package/typings.d.ts +3 -3
@@ -0,0 +1,35 @@
1
+ export default interface IGood {
2
+ /** 数据索引 */
3
+ $index: string;
4
+ /** 序号 */
5
+ sortNumber?: number;
6
+ /** 运输工具种类列表 */
7
+ vehicleList?: any[] | null;
8
+
9
+ /** 运输工具种类 */
10
+ vehicle?: string;
11
+
12
+ channel:string;
13
+
14
+ number:string;
15
+
16
+
17
+
18
+ // itemName?:string;
19
+
20
+ /** 运输工具牌号 */
21
+ // vehicleNo?: string;
22
+
23
+ /** 起运地 */
24
+ // origin?: string[];
25
+
26
+ /** 到达地 */
27
+ // destination?: string[];
28
+
29
+ /** 运输货物名称 */
30
+ // goodName?: string;
31
+
32
+ /** 地区 */
33
+ // area?: string[];
34
+
35
+ }
@@ -0,0 +1,81 @@
1
+ import { ColumnProps } from 'kts-components-antd-x3/lib/Table/interface';
2
+ import { PaginationConfig } from 'kts-components-antd-x3/lib/Table';
3
+ import { message } from 'kts-components-antd-x3';
4
+ import React from 'react';
5
+
6
+ export interface IGetGoodsListOption {
7
+ /** 分页数据 */
8
+ pagination: PaginationConfig;
9
+ }
10
+
11
+ export default class ImportGoods<ColumnType = any> {
12
+ /** 表头 */
13
+ columns: ColumnProps<ColumnType>[] = [
14
+ {
15
+ title: '商品分类',
16
+ dataIndex: 'itemType',
17
+ key: 'itemType',
18
+ },
19
+ {
20
+ title: '商品编码',
21
+ dataIndex: 'itemNo',
22
+ key: 'itemNo',
23
+ },
24
+ {
25
+ title: '商品名称',
26
+ dataIndex: 'itemName',
27
+ key: 'itemName',
28
+ },
29
+ {
30
+ title: '规格型号',
31
+ dataIndex: 'itemModelName',
32
+ key: 'itemModelName',
33
+ },
34
+ {
35
+ title: '计量单位',
36
+ dataIndex: 'unit',
37
+ key: 'unit',
38
+ },
39
+ {
40
+ title: '税率',
41
+ dataIndex: 'taxRate',
42
+ key: 'taxRate',
43
+ render: text => text || text === 0 ? `${text}%` : ''
44
+ },
45
+ {
46
+ title: '单价(含税)',
47
+ dataIndex: 'priceIncludeTax',
48
+ key: 'priceIncludeTax',
49
+ },
50
+ {
51
+ title: '税收分类编码',
52
+ dataIndex: 'taxClassificationCode',
53
+ key: 'taxClassificationCode',
54
+ },
55
+ ];
56
+
57
+ /** 货物列表 */
58
+ dataSource: ColumnType[] = [];
59
+
60
+ /** 分页数据 */
61
+ pagination: PaginationConfig = {};
62
+
63
+ /** 是否显示导入 */
64
+ isVisibleDrawer = false;
65
+
66
+ /** 顶部扩展 */
67
+ topExpand?: React.ReactNode;
68
+
69
+ /** 导入时校验函数 */
70
+ verifyFn: (record: any) => Promise<boolean> = async record => {
71
+ if (!record.taxClassificationCode) {
72
+ message.error({ content: '请维护该商品的税收分类编码!', key: '请维护该商品的税收分类编码!' })
73
+ return false;
74
+ }
75
+ if (record.productStatus === 0) {
76
+ message.error({ content: '当前货物为禁用', key: '当前货物为禁用' })
77
+ return false;
78
+ }
79
+ return true;
80
+ };
81
+ }
@@ -0,0 +1,40 @@
1
+ import IGood from './IGood';
2
+ import { WrappedFormUtils } from 'kts-components-antd-x3/lib/form/Form';
3
+
4
+ export default class PayListState {
5
+
6
+ /** 产品最大数 */
7
+ goodMax?: number;
8
+
9
+ /** 正在编辑的货物 */
10
+ editGood?: IGood;
11
+
12
+ /** 是否可以添加行 */
13
+ isAddRow = true;
14
+
15
+ /** 是否可以删除行 */
16
+ isRemRow = true;
17
+
18
+ /** 货物字典 */
19
+ goodsMap = new Map<string, IGood>();
20
+
21
+ /** 被编辑行的form对象 */
22
+ form?: WrappedFormUtils;
23
+
24
+ /** 运输工具种类列表 */
25
+ vehicleTypeList: any[] = [];
26
+
27
+ /** 货物列表 */
28
+ goodsList: IGood[] = [];
29
+
30
+ /** 列表选中的货物索引列表 */
31
+ selectedGoodIndex: string[] = [];
32
+
33
+ /** 地区 */
34
+ area: any[] = [];
35
+
36
+ addressFieldNames: IFieldNames = { label: 'label', value: 'value', children: 'children' }
37
+ }
38
+ interface IFieldNames {
39
+ label: string; value: string; children: string
40
+ }
@@ -1,14 +1,14 @@
1
- import { ValidationRule } from "kts-components-antd-x3/lib/form";
2
-
3
- /** 干系人 */
4
- export default class Stakeholder {
5
-
6
- /** 禁用字段 */
7
- disableds?: string[];
8
-
9
- /** 启用字段 */
10
- enables?: string[];
11
-
12
- /** 字段字段规则 */
13
- rulesMap?: { [key: string]: ValidationRule[] | undefined }
1
+ import { ValidationRule } from "kts-components-antd-x3/lib/form";
2
+
3
+ /** 干系人 */
4
+ export default class Stakeholder {
5
+
6
+ /** 禁用字段 */
7
+ disableds?: string[];
8
+
9
+ /** 启用字段 */
10
+ enables?: string[];
11
+
12
+ /** 字段字段规则 */
13
+ rulesMap?: { [key: string]: ValidationRule[] | undefined }
14
14
  }
@@ -1,73 +1,76 @@
1
- import GoodsListState from './GoodsListState';
2
- import FreightListState from './FreightListState';
3
- import BuyerState from './BuyerState';
4
- import Stakeholder from './Stakeholder';
5
- import { IInvoiceTypeModalProps } from '../../../InvoiceTypeModal';
6
- import { TaxClassificationProps } from '../../../TaxClassificationCodeModal';
7
- import AutoComplete from './AutoComplete';
8
-
9
- export default class InvoiceControllerState {
10
-
11
- /**
12
- * 组件模式
13
- * prefab 预制
14
- * readOnly 只读
15
- * */
16
- model: 'default' | 'prefab' | 'readOnly' = 'default';
17
-
18
- /**
19
- * 企业类型
20
- * 01 一般纳税人
21
- * 05 转登记纳税人
22
- * 04 代开企业
23
- * 08 小规模纳税人
24
- * */
25
- en: '01' | '05' | '04' | '08' = '01';
26
-
27
- /**
28
- * 发票类型
29
- * 08 - 增值税电子专用发票
30
- * 10 - 增值税电子普通发票
31
- * 01 - 增值税纸质专用发票
32
- * 04 - 增值税纸质普通发票
33
- */
34
- invoiceType: '08' | '10' | '01' | '04' = '08';
35
-
36
- /** 购买方 */
37
- buyerState = new BuyerState();
38
-
39
- /** 干系人 相关-买方、卖方、备注、开票人 */
40
- stakeholder = new Stakeholder();
41
-
42
- /** 货物信息 */
43
- goodsListState = new GoodsListState();
44
-
45
- /** 计算中启动字段 */
46
- calculatingField?: string;
47
-
48
- /** 数量,单价计算时保留的小数位,不传默认8位 */
49
- calculatingDigits?: number;
50
-
51
- /** 金额整数位限制,不传默认9位 */
52
- priceIntegerDigit?: number;
53
-
54
- /** 组件根结构 */
55
- rootElement?: HTMLDivElement | null = null;
56
-
57
- /** 发票类型选择窗口 */
58
- typeModalProps?: IInvoiceTypeModalProps;
59
-
60
- /** 自动补全 */
61
- autoComplete = new AutoComplete();
62
- /**
63
- * 商品税收分类编码窗口
64
- * */
65
- taxClassificationProps?: TaxClassificationProps;
66
-
67
- /**
68
- * 货物运输列表
69
- */
70
- freightListState = new FreightListState();
71
-
72
- addGoodsCheck?: any;
73
- }
1
+ import GoodsListState from './GoodsListState';
2
+ import FreightListState from './FreightListState';
3
+ import PayListState from './PayListState';
4
+ import BuyerState from './BuyerState';
5
+ import Stakeholder from './Stakeholder';
6
+ import { IInvoiceTypeModalProps } from '../../../InvoiceTypeModal';
7
+ import { TaxClassificationProps } from '../../../TaxClassificationCodeModal';
8
+ import AutoComplete from './AutoComplete';
9
+
10
+ export default class InvoiceControllerState {
11
+
12
+ /**
13
+ * 组件模式
14
+ * prefab 预制
15
+ * readOnly 只读
16
+ * */
17
+ model: 'default' | 'prefab' | 'readOnly' = 'default';
18
+
19
+ /**
20
+ * 企业类型
21
+ * 01 一般纳税人
22
+ * 05 转登记纳税人
23
+ * 04 代开企业
24
+ * 08 小规模纳税人
25
+ * */
26
+ en: '01' | '05' | '04' | '08' = '01';
27
+
28
+ /**
29
+ * 发票类型
30
+ * 08 - 增值税电子专用发票
31
+ * 10 - 增值税电子普通发票
32
+ * 01 - 增值税纸质专用发票
33
+ * 04 - 增值税纸质普通发票
34
+ */
35
+ invoiceType: '08' | '10' | '01' | '04' = '08';
36
+
37
+ /** 购买方 */
38
+ buyerState = new BuyerState();
39
+
40
+ /** 干系人 相关-买方、卖方、备注、开票人 */
41
+ stakeholder = new Stakeholder();
42
+
43
+ /** 货物信息 */
44
+ goodsListState = new GoodsListState();
45
+
46
+ /** 计算中启动字段 */
47
+ calculatingField?: string;
48
+
49
+ /** 数量,单价计算时保留的小数位,不传默认8位 */
50
+ calculatingDigits?: number;
51
+
52
+ /** 金额整数位限制,不传默认9位 */
53
+ priceIntegerDigit?: number;
54
+
55
+ /** 组件根结构 */
56
+ rootElement?: HTMLDivElement | null = null;
57
+
58
+ /** 发票类型选择窗口 */
59
+ typeModalProps?: IInvoiceTypeModalProps;
60
+
61
+ /** 自动补全 */
62
+ autoComplete = new AutoComplete();
63
+ /**
64
+ * 商品税收分类编码窗口
65
+ * */
66
+ taxClassificationProps?: TaxClassificationProps;
67
+
68
+ /**
69
+ * 货物运输列表
70
+ */
71
+ freightListState = new FreightListState();
72
+
73
+ payListState=new PayListState();
74
+
75
+ addGoodsCheck?: any;
76
+ }
@@ -1,11 +1,11 @@
1
- import { InvoiceControllerState } from '..';
2
- import idGenerator from '../../tools/idGenerator';
3
-
4
- /**
5
- * 添加的编辑货物运输
6
- */
7
- export default async (state: InvoiceControllerState, options?: any) => {
8
- options.$index = idGenerator();
9
- state.freightListState.goodsList = [...state.freightListState.goodsList, options];
10
- return options;
11
- };
1
+ import { InvoiceControllerState } from '..';
2
+ import idGenerator from '../../tools/idGenerator';
3
+
4
+ /**
5
+ * 添加的编辑货物运输
6
+ */
7
+ export default async (state: InvoiceControllerState, options?: any) => {
8
+ options.$index = idGenerator();
9
+ state.freightListState.goodsList = [...state.freightListState.goodsList, options];
10
+ return options;
11
+ };
@@ -1,11 +1,11 @@
1
- import { InvoiceControllerState } from '../';
2
- import idGenerator from '../../tools/idGenerator';
3
-
4
- /**
5
- * 添加的编辑货物
6
- */
7
- export default async (state: InvoiceControllerState, options?: any) => {
8
- options.$index = idGenerator();
9
- state.goodsListState.goodsList = [...state.goodsListState.goodsList, options];
10
- return options;
11
- };
1
+ import { InvoiceControllerState } from '../';
2
+ import idGenerator from '../../tools/idGenerator';
3
+
4
+ /**
5
+ * 添加的编辑货物
6
+ */
7
+ export default async (state: InvoiceControllerState, options?: any) => {
8
+ options.$index = idGenerator();
9
+ state.goodsListState.goodsList = [...state.goodsListState.goodsList, options];
10
+ return options;
11
+ };
@@ -1,126 +1,126 @@
1
- /**
2
- *
3
- * 折扣率 含税金额 不含税金额
4
- *
5
- * 含税折扣额 = -1 * (含税金额 * 折扣率)
6
- * 不含税扣额 = 含税折扣额 / (1+税率)
7
- * 折扣税额 = 含税折扣额 - 不含税扣额
8
- */
9
-
10
- import { v4 as uuidv4 } from 'uuid';
11
- import { chain, bignumber } from 'mathjs';
12
- import { InvoiceControllerState } from '../';
13
- import LineAttributeType from '../InvoiceControllerState/GoodsListState/LineAttributeType';
14
- import idGenerator from '../../tools/idGenerator';
15
- import { format2 } from '../../../Invoice/tools/calculate';
16
-
17
- export interface IOptions {
18
- /** 需要添加的 索引列表 */
19
- indexList: string[];
20
-
21
- /** 折扣 */
22
- discount: number;
23
-
24
- /** 折扣 金额 */
25
- discolineAmountunt: number;
26
- }
27
-
28
- /**
29
- * 给一组货物添加折扣行
30
- */
31
- export default async (state: InvoiceControllerState, options?: IOptions) => {
32
- if (!options) return;
33
-
34
- const { indexList = [] } = options;
35
- const discount = chain(bignumber(options.discount || 0)).dotDivide(bignumber(100)).done();
36
- const goodsMap = state.goodsListState.goodsMap;
37
- const goodsList = state.goodsListState.goodsList;
38
- const discountGroup = uuidv4();
39
- let amountSum = bignumber(0);
40
-
41
- for (let t = 0; t < indexList.length; t++) {
42
- const $index = indexList[t];
43
- const good = goodsMap.get($index);
44
-
45
- if (!good || good.lineAttribute !== LineAttributeType.正常) continue;
46
-
47
- const i = goodsList.indexOf(good);
48
-
49
- let lineAmountIncludeTax = 0;
50
- let lineAmountExcludeTax = 0;
51
-
52
- const taxRate = chain(bignumber(good.taxRate)).dotDivide(bignumber(100)).done();
53
- if (state.goodsListState.isTaxIncluded) {
54
- /** 金额(含税) -1 * ${good.lineAmountIncludeTax} * ${discount}*/
55
- lineAmountIncludeTax = (() => {
56
- if (t === indexList.length - 1) {
57
- return chain(bignumber(options.discolineAmountunt)).add(amountSum).multiply(-1).done().toNumber();
58
- } else {
59
- return chain(bignumber(-1))
60
- .multiply(bignumber(good.lineAmountIncludeTax))
61
- .multiply(discount)
62
- .done()
63
- .toNumber()
64
- .toFixed(2);
65
- }
66
- })()
67
- amountSum = amountSum.add(bignumber(lineAmountIncludeTax));
68
-
69
- /** 金额(不含税) ${lineAmountIncludeTax} / (1+${good.taxRate}/100)*/
70
- lineAmountExcludeTax = 1 * chain(bignumber(lineAmountIncludeTax))
71
- .dotDivide(chain(bignumber(1)).add(taxRate).done())
72
- .done()
73
- .toNumber()
74
- .toFixed(2)
75
- } else {
76
-
77
- /** 金额(不含税) -1 * ${good.lineAmountIncludeTax} * ${discount}*/
78
- lineAmountExcludeTax = (() => {
79
- if (t === indexList.length - 1) {
80
- return chain(bignumber(options.discolineAmountunt)).add(amountSum).multiply(-1).done().toNumber();
81
- } else {
82
- return chain(bignumber(-1))
83
- .multiply(bignumber(good.lineAmountExcludeTax))
84
- .multiply(discount)
85
- .done()
86
- .toNumber()
87
- .toFixed(2);
88
- }
89
- })()
90
- amountSum = amountSum.add(bignumber(lineAmountExcludeTax));
91
-
92
- /** 金额(含税) lineAmountExcludeTax * (1+${good.taxRate}/100)*/
93
- lineAmountIncludeTax = format2(chain(bignumber(lineAmountExcludeTax))
94
- .multiply(chain(bignumber(1)).add(taxRate).done())
95
- .done().toNumber()) as number
96
- }
97
-
98
- /** 税额 */
99
- const taxAmount = chain(bignumber(lineAmountIncludeTax))
100
- .subtract(bignumber(lineAmountExcludeTax))
101
- .done()
102
- .toNumber();
103
-
104
-
105
- good.discountGroup = discountGroup;
106
- good.lineAttribute = LineAttributeType.被折扣行;
107
- goodsList.splice(i + 1, 0, {
108
- $index: idGenerator(),
109
- lineAttribute: LineAttributeType.折扣行,
110
- taxClassificationCode: good.taxClassificationCode,
111
- taxRate: good.taxRate,
112
- itemName: good.itemName,
113
- shorthand: good.shorthand,
114
- itemNameSelf: good.itemNameSelf,
115
- favouredPolicyMark: good.favouredPolicyMark,
116
- favouredPolicyName: good.favouredPolicyName,
117
- taxFreeType: good.taxFreeType,
118
- discountGroup,
119
- lineAmountIncludeTax,
120
- lineAmountExcludeTax,
121
- taxAmount,
122
- });
123
- }
124
-
125
- state.goodsListState.goodsList = goodsList.slice();
126
- };
1
+ /**
2
+ *
3
+ * 折扣率 含税金额 不含税金额
4
+ *
5
+ * 含税折扣额 = -1 * (含税金额 * 折扣率)
6
+ * 不含税扣额 = 含税折扣额 / (1+税率)
7
+ * 折扣税额 = 含税折扣额 - 不含税扣额
8
+ */
9
+
10
+ import { v4 as uuidv4 } from 'uuid';
11
+ import { chain, bignumber } from 'mathjs';
12
+ import { InvoiceControllerState } from '../';
13
+ import LineAttributeType from '../InvoiceControllerState/GoodsListState/LineAttributeType';
14
+ import idGenerator from '../../tools/idGenerator';
15
+ import { format2 } from '../../../Invoice/tools/calculate';
16
+
17
+ export interface IOptions {
18
+ /** 需要添加的 索引列表 */
19
+ indexList: string[];
20
+
21
+ /** 折扣 */
22
+ discount: number;
23
+
24
+ /** 折扣 金额 */
25
+ discolineAmountunt: number;
26
+ }
27
+
28
+ /**
29
+ * 给一组货物添加折扣行
30
+ */
31
+ export default async (state: InvoiceControllerState, options?: IOptions) => {
32
+ if (!options) return;
33
+
34
+ const { indexList = [] } = options;
35
+ const discount = chain(bignumber(options.discount || 0)).dotDivide(bignumber(100)).done();
36
+ const goodsMap = state.goodsListState.goodsMap;
37
+ const goodsList = state.goodsListState.goodsList;
38
+ const discountGroup = uuidv4();
39
+ let amountSum = bignumber(0);
40
+
41
+ for (let t = 0; t < indexList.length; t++) {
42
+ const $index = indexList[t];
43
+ const good = goodsMap.get($index);
44
+
45
+ if (!good || good.lineAttribute !== LineAttributeType.正常) continue;
46
+
47
+ const i = goodsList.indexOf(good);
48
+
49
+ let lineAmountIncludeTax = 0;
50
+ let lineAmountExcludeTax = 0;
51
+
52
+ const taxRate = chain(bignumber(good.taxRate)).dotDivide(bignumber(100)).done();
53
+ if (state.goodsListState.isTaxIncluded) {
54
+ /** 金额(含税) -1 * ${good.lineAmountIncludeTax} * ${discount}*/
55
+ lineAmountIncludeTax = (() => {
56
+ if (t === indexList.length - 1) {
57
+ return chain(bignumber(options.discolineAmountunt)).add(amountSum).multiply(-1).done().toNumber();
58
+ } else {
59
+ return chain(bignumber(-1))
60
+ .multiply(bignumber(good.lineAmountIncludeTax))
61
+ .multiply(discount)
62
+ .done()
63
+ .toNumber()
64
+ .toFixed(2);
65
+ }
66
+ })()
67
+ amountSum = amountSum.add(bignumber(lineAmountIncludeTax));
68
+
69
+ /** 金额(不含税) ${lineAmountIncludeTax} / (1+${good.taxRate}/100)*/
70
+ lineAmountExcludeTax = 1 * chain(bignumber(lineAmountIncludeTax))
71
+ .dotDivide(chain(bignumber(1)).add(taxRate).done())
72
+ .done()
73
+ .toNumber()
74
+ .toFixed(2)
75
+ } else {
76
+
77
+ /** 金额(不含税) -1 * ${good.lineAmountIncludeTax} * ${discount}*/
78
+ lineAmountExcludeTax = (() => {
79
+ if (t === indexList.length - 1) {
80
+ return chain(bignumber(options.discolineAmountunt)).add(amountSum).multiply(-1).done().toNumber();
81
+ } else {
82
+ return chain(bignumber(-1))
83
+ .multiply(bignumber(good.lineAmountExcludeTax))
84
+ .multiply(discount)
85
+ .done()
86
+ .toNumber()
87
+ .toFixed(2);
88
+ }
89
+ })()
90
+ amountSum = amountSum.add(bignumber(lineAmountExcludeTax));
91
+
92
+ /** 金额(含税) lineAmountExcludeTax * (1+${good.taxRate}/100)*/
93
+ lineAmountIncludeTax = format2(chain(bignumber(lineAmountExcludeTax))
94
+ .multiply(chain(bignumber(1)).add(taxRate).done())
95
+ .done().toNumber()) as number
96
+ }
97
+
98
+ /** 税额 */
99
+ const taxAmount = chain(bignumber(lineAmountIncludeTax))
100
+ .subtract(bignumber(lineAmountExcludeTax))
101
+ .done()
102
+ .toNumber();
103
+
104
+
105
+ good.discountGroup = discountGroup;
106
+ good.lineAttribute = LineAttributeType.被折扣行;
107
+ goodsList.splice(i + 1, 0, {
108
+ $index: idGenerator(),
109
+ lineAttribute: LineAttributeType.折扣行,
110
+ taxClassificationCode: good.taxClassificationCode,
111
+ taxRate: good.taxRate,
112
+ itemName: good.itemName,
113
+ shorthand: good.shorthand,
114
+ itemNameSelf: good.itemNameSelf,
115
+ favouredPolicyMark: good.favouredPolicyMark,
116
+ favouredPolicyName: good.favouredPolicyName,
117
+ taxFreeType: good.taxFreeType,
118
+ discountGroup,
119
+ lineAmountIncludeTax,
120
+ lineAmountExcludeTax,
121
+ taxAmount,
122
+ });
123
+ }
124
+
125
+ state.goodsListState.goodsList = goodsList.slice();
126
+ };