kts-component-invoice-operate 3.2.166 → 3.2.168

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 (215) 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 +9 -9
  8. package/dist/index.esm.js +775 -759
  9. package/dist/index.js +775 -759
  10. package/docs/index.md +5 -5
  11. package/docs-dist/static/arrowDown.a1cbf0d8.svg +2 -2
  12. package/docs-dist/static/arrowUp.4c482054.svg +2 -2
  13. package/docs-dist/static/fork.5431267d.svg +11 -11
  14. package/docs-dist/static/plus.44013ce3.svg +11 -11
  15. package/docs-dist/static/plus.4fd1af30.svg +11 -11
  16. package/index.html +12 -12
  17. package/package.json +62 -61
  18. package/src/Invoice/Invoice-digtal/_test/disabled/index.tsx +40 -40
  19. package/src/Invoice/Invoice-digtal/_test/easiest/index.tsx +17 -17
  20. package/src/Invoice/Invoice-digtal/_test/header/index.tsx +84 -84
  21. package/src/Invoice/Invoice-digtal/_test/importGoods/index.tsx +868 -868
  22. package/src/Invoice/Invoice-digtal/_test/importStakeholder/index.tsx +18 -18
  23. package/src/Invoice/Invoice-digtal/_test/lineCredit/index.tsx +19 -19
  24. package/src/Invoice/Invoice-digtal/_test/prefab/index.tsx +150 -150
  25. package/src/Invoice/Invoice-digtal/_test/readOnly/index.tsx +55 -55
  26. package/src/Invoice/Invoice-digtal/_test/realEstateInfo/index.tsx +21 -21
  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 +34 -34
  30. package/src/Invoice/InvoiceController/InvoiceControllerForm/index.ts +95 -95
  31. package/src/Invoice/InvoiceController/InvoiceControllerState/AutoComplete/index.ts +26 -26
  32. package/src/Invoice/InvoiceController/InvoiceControllerState/BuyerState/index.tsx +88 -88
  33. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/Drag/index.ts +15 -15
  34. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/EndowCode/index.tsx +104 -104
  35. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/IColumnsReplenish/index.ts +10 -10
  36. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/IGood/index.ts +87 -87
  37. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/ImportGoods/index.ts +81 -81
  38. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/LineAttributeType/index.ts +7 -7
  39. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/ProductComparison/index.ts +9 -9
  40. package/src/Invoice/InvoiceController/InvoiceControllerState/GoodsListState/index.ts +131 -131
  41. package/src/Invoice/InvoiceController/InvoiceControllerState/Stakeholder/index.ts +13 -13
  42. package/src/Invoice/InvoiceController/InvoiceControllerState/index.ts +65 -65
  43. package/src/Invoice/InvoiceController/fns/addGood.ts +11 -11
  44. package/src/Invoice/InvoiceController/fns/addGoodDiscount.ts +126 -126
  45. package/src/Invoice/InvoiceController/fns/addGoodDiscountV2.ts +86 -86
  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 +79 -79
  49. package/src/Invoice/InvoiceController/fns/itemBlur.ts +40 -40
  50. package/src/Invoice/InvoiceController/fns/mergeDetails.ts +201 -201
  51. package/src/Invoice/InvoiceController/fns/mergeDiscount.ts +35 -35
  52. package/src/Invoice/InvoiceController/fns/saveEditGood.ts +24 -24
  53. package/src/Invoice/InvoiceController/fns/setEditGood.ts +16 -16
  54. package/src/Invoice/InvoiceController/fns/setGoods.ts +10 -10
  55. package/src/Invoice/InvoiceController/fns/updateInvoiceNo.ts +8 -8
  56. package/src/Invoice/InvoiceController/index.ts +87 -87
  57. package/src/Invoice/_test/buyerNameSearch/index.tsx +42 -42
  58. package/src/Invoice/_test/children/index.tsx +214 -214
  59. package/src/Invoice/_test/deduction/index.tsx +935 -935
  60. package/src/Invoice/_test/draft/index.tsx +40 -40
  61. package/src/Invoice/_test/easiest/index.tsx +5 -5
  62. package/src/Invoice/_test/endowCode/index.tsx +1158 -1158
  63. package/src/Invoice/_test/goodsMenuExpand/index.tsx +32 -32
  64. package/src/Invoice/_test/importBuyer/index.tsx +74 -74
  65. package/src/Invoice/_test/importGoods/index.tsx +1197 -1197
  66. package/src/Invoice/_test/invoiceType/index.tsx +59 -59
  67. package/src/Invoice/_test/isInvoiceNo/index.tsx +12 -12
  68. package/src/Invoice/_test/replaceHead/index.tsx +22 -22
  69. package/src/Invoice/_test/retrieveData/index.tsx +22 -22
  70. package/src/Invoice/_test/seller/index.tsx +28 -28
  71. package/src/Invoice/_test/setDataSource/index.tsx +73 -73
  72. package/src/Invoice/_test/unit/index.tsx +19 -19
  73. package/src/Invoice/index.less +31 -31
  74. package/src/Invoice/index.md +56 -56
  75. package/src/Invoice/index.tsx +183 -183
  76. package/src/Invoice/tools/calculate/index.ts +132 -132
  77. package/src/Invoice/tools/coolingFn/index.ts +17 -17
  78. package/src/Invoice/tools/evaluate/index.ts +7 -7
  79. package/src/Invoice/tools/idGenerator/index.ts +2 -2
  80. package/src/Invoice/tools/itemName/index.ts +55 -55
  81. package/src/Invoice/tools/lazyFn/index.ts +19 -19
  82. package/src/Invoice/tools/mounting/index.ts +13 -13
  83. package/src/Invoice/tools/strringFn/index.ts +40 -40
  84. package/src/Invoice/tools/useToGenerateId/index.ts +8 -8
  85. package/src/Invoice/tools/utils/index.ts +1 -1
  86. package/src/Invoice/tools/utils/money/index.ts +20 -20
  87. package/src/Invoice/ui/default/AddComparisonDrawer/index.tsx +149 -149
  88. package/src/Invoice/ui/default/Buyer/index.less +219 -219
  89. package/src/Invoice/ui/default/Buyer/index.tsx +114 -114
  90. package/src/Invoice/ui/default/Buyer/ui/BuyerNameInput/index.tsx +166 -166
  91. package/src/Invoice/ui/default/Buyer/ui/ImportBuyerButton/index.tsx +21 -21
  92. package/src/Invoice/ui/default/EndowCodeDrawer/index.less +8 -8
  93. package/src/Invoice/ui/default/EndowCodeDrawer/index.tsx +606 -592
  94. package/src/Invoice/ui/default/GoodsList/hook/useColumns/autoFillFn/index.ts +647 -647
  95. package/src/Invoice/ui/default/GoodsList/hook/useColumns/index.tsx +711 -711
  96. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/Drag/index.less +20 -20
  97. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/Drag/index.tsx +205 -205
  98. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/Expand/index.tsx +57 -57
  99. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/ItemCodeInput/index.less +18 -18
  100. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/ItemCodeInput/index.tsx +49 -49
  101. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/ItemNameInput/index.less +17 -17
  102. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/ItemNameInput/index.tsx +91 -91
  103. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowEditButton/index.tsx +30 -30
  104. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowMenu/hook/_useAddComparison/index.tsx +43 -43
  105. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowMenu/hook/useAddDiscount/index.tsx +118 -118
  106. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowMenu/hook/useDelItem/index.tsx +41 -41
  107. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowMenu/hook/useEndowCode/index.tsx +25 -25
  108. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowMenu/index.less +13 -13
  109. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowMenu/index.tsx +99 -99
  110. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/RowSaveButton/index.tsx +14 -14
  111. package/src/Invoice/ui/default/GoodsList/hook/useColumns/ui/TitleText/index.tsx +20 -20
  112. package/src/Invoice/ui/default/GoodsList/hook/useDeduction/index.tsx +24 -24
  113. package/src/Invoice/ui/default/GoodsList/hook/useOnRow/index.tsx +52 -52
  114. package/src/Invoice/ui/default/GoodsList/hook/useRowSelection/index.tsx +120 -120
  115. package/src/Invoice/ui/default/GoodsList/hook/useWindowClick/index.tsx +23 -23
  116. package/src/Invoice/ui/default/GoodsList/index.less +185 -185
  117. package/src/Invoice/ui/default/GoodsList/index.tsx +205 -205
  118. package/src/Invoice/ui/default/GoodsList/ui/AddRowButton/index.tsx +65 -65
  119. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useAddDiscountRowButton/index.less +21 -21
  120. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useAddDiscountRowButton/index.tsx +244 -244
  121. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useCommodityComparisonButton/index.tsx +75 -75
  122. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useDelRowButton/index.tsx +69 -69
  123. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useEndowCodeButton/index.tsx +65 -65
  124. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useMergeDetails/index.tsx +91 -91
  125. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useMergeDiscount/index.tsx +36 -36
  126. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useSalesDiscount/index.tsx +109 -109
  127. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/hooks/useSalesGifts/index.tsx +94 -94
  128. package/src/Invoice/ui/default/GoodsList/ui/BulkMenu/index.tsx +37 -37
  129. package/src/Invoice/ui/default/GoodsList/ui/DescribeSwitch/index.tsx +36 -36
  130. package/src/Invoice/ui/default/GoodsList/ui/Search/index.less +10 -10
  131. package/src/Invoice/ui/default/GoodsList/ui/Search/index.tsx +52 -52
  132. package/src/Invoice/ui/default/GoodsList/ui/Statistics/index.less +18 -18
  133. package/src/Invoice/ui/default/GoodsList/ui/Statistics/index.tsx +114 -114
  134. package/src/Invoice/ui/default/GoodsList/ui/TableRow/index.less +40 -40
  135. package/src/Invoice/ui/default/GoodsList/ui/TableRow/index.tsx +71 -71
  136. package/src/Invoice/ui/default/GoodsList/ui/TableVirtual/index.less +38 -38
  137. package/src/Invoice/ui/default/GoodsList/ui/TableVirtual/index.tsx +130 -130
  138. package/src/Invoice/ui/default/GoodsList/ui/TableVirtual.o/index.less +44 -44
  139. package/src/Invoice/ui/default/GoodsList/ui/TableVirtual.o/index.tsx +96 -96
  140. package/src/Invoice/ui/default/GoodsList/ui/TaxIncludedSwitch/index.tsx +31 -31
  141. package/src/Invoice/ui/default/ImportBuyerDrawer/index.tsx +75 -75
  142. package/src/Invoice/ui/default/ImportGoodsDrawer/index.tsx +198 -198
  143. package/src/Invoice/ui/default/InvoiceHeader/index.less +68 -68
  144. package/src/Invoice/ui/default/InvoiceHeader/index.tsx +246 -246
  145. package/src/Invoice/ui/default/Seller/index.less +113 -113
  146. package/src/Invoice/ui/default/Seller/index.tsx +98 -98
  147. package/src/Invoice/ui/default/Sign/index.less +14 -14
  148. package/src/Invoice/ui/default/Sign/index.tsx +71 -71
  149. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/autoFillFn/index.ts +639 -639
  150. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/index.tsx +660 -660
  151. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/svg/plus.svg +11 -11
  152. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/Drag/index.less +20 -20
  153. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/Drag/index.tsx +205 -205
  154. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/ItemNameInput/index.less +9 -9
  155. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/ItemNameInput/index.tsx +87 -87
  156. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowEditButton/index.tsx +30 -30
  157. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowMenu/hook/_useAddComparison/index.tsx +43 -43
  158. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowMenu/hook/useAddDiscount/index.tsx +76 -76
  159. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowMenu/hook/useDelItem/index.tsx +41 -41
  160. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowMenu/hook/useEndowCode/index.tsx +34 -34
  161. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowMenu/index.less +13 -13
  162. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowMenu/index.tsx +98 -98
  163. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/RowSaveButton/index.tsx +14 -14
  164. package/src/Invoice/ui/digtal/GoodsList/hook/useColumns/ui/TitleText/index.tsx +20 -20
  165. package/src/Invoice/ui/digtal/GoodsList/hook/useOnRow/index.tsx +51 -51
  166. package/src/Invoice/ui/digtal/GoodsList/hook/useRowSelection/index.tsx +121 -121
  167. package/src/Invoice/ui/digtal/GoodsList/hook/useWindowClick/index.tsx +23 -23
  168. package/src/Invoice/ui/digtal/GoodsList/index.less +56 -56
  169. package/src/Invoice/ui/digtal/GoodsList/index.tsx +180 -180
  170. package/src/Invoice/ui/digtal/GoodsList/ui/AddRowButton/index.tsx +67 -67
  171. package/src/Invoice/ui/digtal/GoodsList/ui/BulkMenu/hooks/useAddDiscountRowButton/index.tsx +340 -340
  172. package/src/Invoice/ui/digtal/GoodsList/ui/BulkMenu/hooks/useAddDiscountRowButton/svg/add.svg +11 -11
  173. package/src/Invoice/ui/digtal/GoodsList/ui/BulkMenu/hooks/useCommodityComparisonButton/index.tsx +75 -75
  174. package/src/Invoice/ui/digtal/GoodsList/ui/BulkMenu/hooks/useDelRowButton/index.tsx +50 -50
  175. package/src/Invoice/ui/digtal/GoodsList/ui/BulkMenu/hooks/useEmptyRefill/index.tsx +37 -37
  176. package/src/Invoice/ui/digtal/GoodsList/ui/BulkMenu/hooks/useEndowCodeButton/index.tsx +82 -82
  177. package/src/Invoice/ui/digtal/GoodsList/ui/BulkMenu/hooks/useReselectInvoiceType/index.tsx +57 -57
  178. package/src/Invoice/ui/digtal/GoodsList/ui/DescribeSwitch/index.tsx +36 -36
  179. package/src/Invoice/ui/digtal/GoodsList/ui/Search/index.less +11 -11
  180. package/src/Invoice/ui/digtal/GoodsList/ui/Search/index.tsx +50 -50
  181. package/src/Invoice/ui/digtal/GoodsList/ui/Statistics/index.less +53 -53
  182. package/src/Invoice/ui/digtal/GoodsList/ui/Statistics/index.tsx +98 -98
  183. package/src/Invoice/ui/digtal/GoodsList/ui/Statistics/svg/fork.svg +11 -11
  184. package/src/Invoice/ui/digtal/GoodsList/ui/TableRow/index.less +28 -28
  185. package/src/Invoice/ui/digtal/GoodsList/ui/TableRow/index.tsx +53 -53
  186. package/src/Invoice/ui/digtal/GoodsList/ui/TableVirtual/index.less +38 -38
  187. package/src/Invoice/ui/digtal/GoodsList/ui/TableVirtual/index.tsx +108 -108
  188. package/src/Invoice/ui/digtal/GoodsList/ui/TaxIncludedSwitch/index.tsx +31 -31
  189. package/src/Invoice/ui/digtal/InvoiceHeader/index.less +57 -57
  190. package/src/Invoice/ui/digtal/InvoiceHeader/index.tsx +77 -77
  191. package/src/Invoice/ui/digtal/RealEstateInfo/index.less +14 -14
  192. package/src/Invoice/ui/digtal/RealEstateInfo/index.tsx +192 -192
  193. package/src/Invoice/ui/digtal/Sign/index.less +48 -48
  194. package/src/Invoice/ui/digtal/Sign/index.tsx +99 -99
  195. package/src/Invoice/ui/digtal/StakeFarmerholder/index.less +99 -99
  196. package/src/Invoice/ui/digtal/StakeFarmerholder/index.tsx +436 -436
  197. package/src/Invoice/ui/digtal/StakeFarmerholder/svg/arrowDown.svg +2 -2
  198. package/src/Invoice/ui/digtal/StakeFarmerholder/svg/arrowUp.svg +2 -2
  199. package/src/Invoice/ui/digtal/StakeFarmerholder/svg/plus.svg +11 -11
  200. package/src/Invoice/ui/digtal/Stakeholder/index.less +99 -99
  201. package/src/Invoice/ui/digtal/Stakeholder/index.tsx +396 -396
  202. package/src/Invoice/ui/digtal/Stakeholder/svg/arrowDown.svg +2 -2
  203. package/src/Invoice/ui/digtal/Stakeholder/svg/arrowUp.svg +2 -2
  204. package/src/Invoice/ui/digtal/Stakeholder/svg/plus.svg +11 -11
  205. package/src/InvoiceTypeModal/_test/easiest/index.tsx +31 -31
  206. package/src/InvoiceTypeModal/index.less +7 -7
  207. package/src/InvoiceTypeModal/index.md +5 -5
  208. package/src/InvoiceTypeModal/index.tsx +161 -161
  209. package/src/TaxClassificationCodeModal/_test/easiest/index.tsx +184 -184
  210. package/src/TaxClassificationCodeModal/index.less +9 -4
  211. package/src/TaxClassificationCodeModal/index.md +6 -6
  212. package/src/TaxClassificationCodeModal/index.tsx +144 -141
  213. package/src/index.ts +13 -12
  214. package/tsconfig.json +31 -31
  215. package/typings.d.ts +3 -3
@@ -1,104 +1,104 @@
1
- import GoodsListState from '../../GoodsListState';
2
- import IGood from '../IGood';
3
- import LineAttributeType from '../LineAttributeType';
4
-
5
- export default class EndowCode {
6
-
7
- /** 准备赋码的货物索引列表 */
8
- endowcodeGoodIndex: string[] = [];
9
-
10
- /**
11
- * 获取 税收分类编码列表 (弃用)
12
- * @deprecated 请使用 getTaxCategoryCodeTree 替换
13
- * */
14
- getTaxCategoryCodeList: (value: string) => Promise<{ value: string, label: string }[]> = async () => [];
15
-
16
- /**
17
- * 获取 税收分类编码树
18
- * @param taxCategoryCode 税收分类编码
19
- * @param val val
20
- * @returns 税收分类编码树
21
- */
22
- getTaxCategoryCodeTree?: (taxCategoryCode?: string, val?: string) => Promise<{ id: string, pid: string }[]>;
23
-
24
- /**
25
- * 动态加载
26
- * */
27
- onLoadTaxClassificationCode: (value?: any) => Promise<any[]> = async () => [];
28
-
29
- /** 税率 优惠政策 */
30
- getReadOnlyTaxRate?: (value?: GoodsListState) => boolean;
31
-
32
- /** 优惠政策 优惠政策 */
33
- getReadOnlyFavouredPolicy?: (value?: GoodsListState) => boolean;
34
-
35
- /**
36
- * 获取赋码时候的默认值
37
- * @param value 商品信息
38
- * @param length 商品数量
39
- * */
40
- getDefaultValue?: (value: IGood, length: number) => Promise<IGood>;
41
-
42
- /** 税率 是否可以编辑 校验函数 */
43
- readonly readOnlyTaxRateMap: { [key: string]: (value?: GoodsListState) => boolean } = {
44
- /** 草稿发票 */
45
- DRAFT: draft,
46
- };
47
-
48
- /** 优惠政策类型列表 */
49
- favouredPolicyNameList: string[] = [
50
- '100%先征后退',
51
- '即征即退30%',
52
- '即征即退50%',
53
- '即征即退70%',
54
- '按3%简易征收',
55
- '按5%简易征收',
56
- '按3%简易征收减按1.5%计征',
57
- '稀土产品',
58
- '简易征收',
59
- '50%先征后退',
60
- '不征税',
61
- '先征后退',
62
- '免税',
63
- '即征即退100%',
64
- '超税负3%即征即退',
65
- '超税负8%即征即退',
66
- '超税负12%即征即退',
67
- ];
68
-
69
- /** 免税类型 是否需要 */
70
- isTaxFreeTypeNeeded: boolean = true;
71
-
72
- /** 免税类型 列表 */
73
- taxFreeTypeList: any[] = [
74
- { label: '出口免税和其他免税优惠政策(免税)', value: 1 },
75
- { label: '不征增值税(不征税)', value: 2 },
76
- { label: '普通零税率(0%)', value: 3 },
77
- ];
78
-
79
- /**
80
- * 小规模纳税人 自动赋码缓存 、
81
- * */
82
- cache: { [key: string]: any } = {};
83
-
84
- /**
85
- * 打开侧边栏
86
- * */
87
- onSearchTaxClassificationCode: (value?: any) => Promise<any[]> = async () => [];
88
- }
89
-
90
- /** 草稿发票 税率 是否可以编辑 校验函数 */
91
- function draft(value?: GoodsListState) {
92
- if (!value) return true;
93
-
94
- // isDiscount
95
- const goods = value.endowCode.endowcodeGoodIndex.map(e => value.goodsMap.get(e)).filter(e => e?.lineAttribute !== LineAttributeType.折扣行);
96
- const isDiscount = goods.some(e => e?.lineAttribute === LineAttributeType.被折扣行);
97
-
98
- // 是否折扣
99
- if (isDiscount) {
100
- return goods.length === 1
101
- } else {
102
- return false;
103
- }
104
- }
1
+ import GoodsListState from '../../GoodsListState';
2
+ import IGood from '../IGood';
3
+ import LineAttributeType from '../LineAttributeType';
4
+
5
+ export default class EndowCode {
6
+
7
+ /** 准备赋码的货物索引列表 */
8
+ endowcodeGoodIndex: string[] = [];
9
+
10
+ /**
11
+ * 获取 税收分类编码列表 (弃用)
12
+ * @deprecated 请使用 getTaxCategoryCodeTree 替换
13
+ * */
14
+ getTaxCategoryCodeList: (value: string) => Promise<{ value: string, label: string }[]> = async () => [];
15
+
16
+ /**
17
+ * 获取 税收分类编码树
18
+ * @param taxCategoryCode 税收分类编码
19
+ * @param val val
20
+ * @returns 税收分类编码树
21
+ */
22
+ getTaxCategoryCodeTree?: (taxCategoryCode?: string, val?: string) => Promise<{ id: string, pid: string }[]>;
23
+
24
+ /**
25
+ * 动态加载
26
+ * */
27
+ onLoadTaxClassificationCode: (value?: any) => Promise<any[]> = async () => [];
28
+
29
+ /** 税率 优惠政策 */
30
+ getReadOnlyTaxRate?: (value?: GoodsListState) => boolean;
31
+
32
+ /** 优惠政策 优惠政策 */
33
+ getReadOnlyFavouredPolicy?: (value?: GoodsListState) => boolean;
34
+
35
+ /**
36
+ * 获取赋码时候的默认值
37
+ * @param value 商品信息
38
+ * @param length 商品数量
39
+ * */
40
+ getDefaultValue?: (value: IGood, length: number) => Promise<IGood>;
41
+
42
+ /** 税率 是否可以编辑 校验函数 */
43
+ readonly readOnlyTaxRateMap: { [key: string]: (value?: GoodsListState) => boolean } = {
44
+ /** 草稿发票 */
45
+ DRAFT: draft,
46
+ };
47
+
48
+ /** 优惠政策类型列表 */
49
+ favouredPolicyNameList: string[] = [
50
+ '100%先征后退',
51
+ '即征即退30%',
52
+ '即征即退50%',
53
+ '即征即退70%',
54
+ '按3%简易征收',
55
+ '按5%简易征收',
56
+ '按3%简易征收减按1.5%计征',
57
+ '稀土产品',
58
+ '简易征收',
59
+ '50%先征后退',
60
+ '不征税',
61
+ '先征后退',
62
+ '免税',
63
+ '即征即退100%',
64
+ '超税负3%即征即退',
65
+ '超税负8%即征即退',
66
+ '超税负12%即征即退',
67
+ ];
68
+
69
+ /** 免税类型 是否需要 */
70
+ isTaxFreeTypeNeeded: boolean = true;
71
+
72
+ /** 免税类型 列表 */
73
+ taxFreeTypeList: any[] = [
74
+ { label: '出口免税和其他免税优惠政策(免税)', value: 1 },
75
+ { label: '不征增值税(不征税)', value: 2 },
76
+ { label: '普通零税率(0%)', value: 3 },
77
+ ];
78
+
79
+ /**
80
+ * 小规模纳税人 自动赋码缓存 、
81
+ * */
82
+ cache: { [key: string]: any } = {};
83
+
84
+ /**
85
+ * 打开侧边栏
86
+ * */
87
+ onSearchTaxClassificationCode: (value?: any) => Promise<any[]> = async () => [];
88
+ }
89
+
90
+ /** 草稿发票 税率 是否可以编辑 校验函数 */
91
+ function draft(value?: GoodsListState) {
92
+ if (!value) return true;
93
+
94
+ // isDiscount
95
+ const goods = value.endowCode.endowcodeGoodIndex.map(e => value.goodsMap.get(e)).filter(e => e?.lineAttribute !== LineAttributeType.折扣行);
96
+ const isDiscount = goods.some(e => e?.lineAttribute === LineAttributeType.被折扣行);
97
+
98
+ // 是否折扣
99
+ if (isDiscount) {
100
+ return goods.length === 1
101
+ } else {
102
+ return false;
103
+ }
104
+ }
@@ -1,10 +1,10 @@
1
-
2
- /** 商品表格补充配置 */
3
-
4
- import { ValidationRule } from "kts-components-antd-x3/lib/form";
5
-
6
- export default interface IColumnsReplenish {
7
-
8
- /** 补充的规则 */
9
- rules: ValidationRule[];
10
- }
1
+
2
+ /** 商品表格补充配置 */
3
+
4
+ import { ValidationRule } from "kts-components-antd-x3/lib/form";
5
+
6
+ export default interface IColumnsReplenish {
7
+
8
+ /** 补充的规则 */
9
+ rules: ValidationRule[];
10
+ }
@@ -1,87 +1,87 @@
1
- import LineAttributeType from '../LineAttributeType';
2
-
3
- export default interface IGood {
4
- /** 数据索引 */
5
- $index: string;
6
-
7
- /** 级别 */
8
- level?: number;
9
-
10
- /** 序号 */
11
- serialNo?: number;
12
-
13
- /** 折扣组 uuid */
14
- discountGroup?: string;
15
-
16
- /** 发票ID */
17
- id?: string;
18
-
19
- /** 商品编码(对方-购买方) */
20
- itemCode?: string;
21
-
22
- /** 项目名称(对方-购买方) */
23
- itemName?: string;
24
-
25
- /** 单位(对方-购买方) */
26
- unit?: string;
27
-
28
- /** 货物规格型号(对方-购买方) */
29
- itemModelName?: string;
30
-
31
- /** 商品编码(我方-销售) */
32
- itemCodeSelf?: string;
33
-
34
- /** 项目名称(我方-销售) */
35
- itemNameSelf?: string;
36
-
37
- /** 货物规格型号(我方-销售) */
38
- itemModelNameSelf?: string;
39
-
40
- /** 数量 */
41
- quantity?: number;
42
-
43
- /** 单价(含税) */
44
- priceIncludeTax?: number;
45
-
46
- /** 单价(不含税) */
47
- priceExcludeTax?: number;
48
-
49
- /** 类型 0 正常行, 1 折扣行 2 被折扣行 */
50
- lineAttribute: LineAttributeType;
51
-
52
- /** 金额(含税) */
53
- lineAmountIncludeTax?: number;
54
-
55
- /** 金额(不含税) */
56
- lineAmountExcludeTax?: number;
57
-
58
- /** 税率列表 */
59
- goodsTaxRateList?: number[] | null;
60
-
61
- /** 税率 */
62
- taxRate?: number;
63
-
64
- /** 免税类型 */
65
- taxFreeType?: string;
66
-
67
- /** 税额 */
68
- taxAmount?: number;
69
-
70
- /** 税收分类编码 */
71
- taxClassificationCode?: string;
72
-
73
- /** 商品和服务分类简称 */
74
- shorthand?: string;
75
-
76
- /** 是否享受优惠政策 */
77
- favouredPolicyMark?: number;
78
-
79
- /** 优惠政策类型 */
80
- favouredPolicyName?: string;
81
-
82
- /** 税收分类名称 */
83
- productName?: string;
84
-
85
- /** 孩子 */
86
- children?: IGood[];
87
- }
1
+ import LineAttributeType from '../LineAttributeType';
2
+
3
+ export default interface IGood {
4
+ /** 数据索引 */
5
+ $index: string;
6
+
7
+ /** 级别 */
8
+ level?: number;
9
+
10
+ /** 序号 */
11
+ serialNo?: number;
12
+
13
+ /** 折扣组 uuid */
14
+ discountGroup?: string;
15
+
16
+ /** 发票ID */
17
+ id?: string;
18
+
19
+ /** 商品编码(对方-购买方) */
20
+ itemCode?: string;
21
+
22
+ /** 项目名称(对方-购买方) */
23
+ itemName?: string;
24
+
25
+ /** 单位(对方-购买方) */
26
+ unit?: string;
27
+
28
+ /** 货物规格型号(对方-购买方) */
29
+ itemModelName?: string;
30
+
31
+ /** 商品编码(我方-销售) */
32
+ itemCodeSelf?: string;
33
+
34
+ /** 项目名称(我方-销售) */
35
+ itemNameSelf?: string;
36
+
37
+ /** 货物规格型号(我方-销售) */
38
+ itemModelNameSelf?: string;
39
+
40
+ /** 数量 */
41
+ quantity?: number;
42
+
43
+ /** 单价(含税) */
44
+ priceIncludeTax?: number;
45
+
46
+ /** 单价(不含税) */
47
+ priceExcludeTax?: number;
48
+
49
+ /** 类型 0 正常行, 1 折扣行 2 被折扣行 */
50
+ lineAttribute: LineAttributeType;
51
+
52
+ /** 金额(含税) */
53
+ lineAmountIncludeTax?: number;
54
+
55
+ /** 金额(不含税) */
56
+ lineAmountExcludeTax?: number;
57
+
58
+ /** 税率列表 */
59
+ goodsTaxRateList?: number[] | null;
60
+
61
+ /** 税率 */
62
+ taxRate?: number;
63
+
64
+ /** 免税类型 */
65
+ taxFreeType?: string;
66
+
67
+ /** 税额 */
68
+ taxAmount?: number;
69
+
70
+ /** 税收分类编码 */
71
+ taxClassificationCode?: string;
72
+
73
+ /** 商品和服务分类简称 */
74
+ shorthand?: string;
75
+
76
+ /** 是否享受优惠政策 */
77
+ favouredPolicyMark?: number;
78
+
79
+ /** 优惠政策类型 */
80
+ favouredPolicyName?: string;
81
+
82
+ /** 税收分类名称 */
83
+ productName?: string;
84
+
85
+ /** 孩子 */
86
+ children?: IGood[];
87
+ }
@@ -1,81 +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
- }
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
+ }
@@ -1,8 +1,8 @@
1
- enum LineAttributeType {
2
- 正常 = 0,
3
- 折扣行 = 1,
4
- 被折扣行 = 2,
5
- 折让行 = 3,
6
- 赠品行 = 4,
7
- }
1
+ enum LineAttributeType {
2
+ 正常 = 0,
3
+ 折扣行 = 1,
4
+ 被折扣行 = 2,
5
+ 折让行 = 3,
6
+ 赠品行 = 4,
7
+ }
8
8
  export default LineAttributeType;
@@ -1,10 +1,10 @@
1
- import IGood from "../IGood";
2
-
3
- export default class ProductComparison {
4
-
5
- /** 执行商品对照 */
6
- onComply?: (e: IGood[]) => Promise<IGood[]>
7
-
8
- /** 更新对照表 */
9
- // onUpdateComparisonTable?: (e: IGood, values:any) => Promise<void>
1
+ import IGood from "../IGood";
2
+
3
+ export default class ProductComparison {
4
+
5
+ /** 执行商品对照 */
6
+ onComply?: (e: IGood[]) => Promise<IGood[]>
7
+
8
+ /** 更新对照表 */
9
+ // onUpdateComparisonTable?: (e: IGood, values:any) => Promise<void>
10
10
  }