@bit-sun/business-component 2.0.28 → 2.0.30

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 (78) hide show
  1. package/.editorconfig +16 -16
  2. package/.fatherrc.ts +4 -4
  3. package/.gitlab-ci.yml +174 -174
  4. package/.prettierignore +7 -7
  5. package/.prettierrc +11 -11
  6. package/.umirc.ts +74 -74
  7. package/README.md +27 -27
  8. package/dist/index.esm.js +5625 -7523
  9. package/dist/index.js +5622 -7520
  10. package/docs/index.md +21 -21
  11. package/lib/assets/drag.svg +17 -17
  12. package/lib/assets/exportFail.svg +37 -37
  13. package/lib/assets/exportProcessing.svg +28 -28
  14. package/lib/assets/exportSuccess.svg +34 -34
  15. package/lib/assets/label_icon_bottom.svg +25 -25
  16. package/lib/assets/upExport.svg +22 -22
  17. package/package.json +5 -3
  18. package/src/assets/close.svg +26 -26
  19. package/src/assets/drag.svg +17 -17
  20. package/src/assets/exportFail.svg +37 -37
  21. package/src/assets/exportProcessing.svg +28 -28
  22. package/src/assets/exportSuccess.svg +34 -34
  23. package/src/assets/icon-shezhi.svg +17 -17
  24. package/src/assets/label_icon_bottom.svg +25 -25
  25. package/src/assets/upExport.svg +22 -22
  26. package/src/components/Business/AddSelectBusiness/index.md +41 -41
  27. package/src/components/Business/AddSelectBusiness/index.tsx +290 -290
  28. package/src/components/Business/CommodityEntry/index.md +70 -70
  29. package/src/components/Business/CommodityEntry/index.tsx +80 -80
  30. package/src/components/Business/CommonGuideWrapper/index.less +111 -111
  31. package/src/components/Business/CommonGuideWrapper/index.md +39 -39
  32. package/src/components/Business/CommonGuideWrapper/index.tsx +83 -83
  33. package/src/components/Business/SearchSelect/BusinessUtils.ts +1448 -1446
  34. package/src/components/Business/SearchSelect/common.ts +53 -53
  35. package/src/components/Business/SearchSelect/index.md +1137 -1137
  36. package/src/components/Business/SearchSelect/index.tsx +51 -51
  37. package/src/components/Business/SearchSelect/utils.ts +99 -99
  38. package/src/components/Business/StateFlow/index.less +130 -130
  39. package/src/components/Business/StateFlow/index.md +60 -60
  40. package/src/components/Business/StateFlow/index.tsx +29 -29
  41. package/src/components/Business/TreeSearchSelect/index.md +126 -126
  42. package/src/components/Business/TreeSearchSelect/index.tsx +34 -34
  43. package/src/components/Business/TreeSearchSelect/utils.ts +60 -60
  44. package/src/components/Business/columnSettingTable/columnSetting.tsx +594 -594
  45. package/src/components/Business/columnSettingTable/index.less +247 -247
  46. package/src/components/Business/columnSettingTable/index.md +357 -357
  47. package/src/components/Business/columnSettingTable/index.tsx +216 -216
  48. package/src/components/Business/columnSettingTable/sulaSettingTable.tsx +224 -224
  49. package/src/components/Business/columnSettingTable/utils.tsx +68 -68
  50. package/src/components/Functional/AddSelect/index.less +367 -367
  51. package/src/components/Functional/AddSelect/index.md +122 -122
  52. package/src/components/Functional/AddSelect/index.tsx +952 -952
  53. package/src/components/Functional/BillEntry/index.less +371 -371
  54. package/src/components/Functional/BillEntry/index.md +37 -37
  55. package/src/components/Functional/BillEntry/index.tsx +547 -547
  56. package/src/components/Functional/DataImport/index.less +63 -63
  57. package/src/components/Functional/DataImport/index.md +44 -44
  58. package/src/components/Functional/DataImport/index.tsx +689 -689
  59. package/src/components/Functional/DataValidation/index.less +63 -63
  60. package/src/components/Functional/DataValidation/index.md +38 -38
  61. package/src/components/Functional/DataValidation/index.tsx +681 -681
  62. package/src/components/Functional/ExportFunctions/ExportIcon/index.md +37 -37
  63. package/src/components/Functional/ExportFunctions/ExportIcon/index.tsx +59 -59
  64. package/src/components/Functional/QueryMutipleInput/index.less +37 -37
  65. package/src/components/Functional/QueryMutipleInput/index.md +33 -33
  66. package/src/components/Functional/QueryMutipleInput/index.tsx +128 -128
  67. package/src/components/Functional/SearchSelect/index.less +115 -115
  68. package/src/components/Functional/SearchSelect/index.md +141 -141
  69. package/src/components/Functional/SearchSelect/index.tsx +812 -812
  70. package/src/components/Functional/TreeSearchSelect/index.md +47 -47
  71. package/src/components/Functional/TreeSearchSelect/index.tsx +149 -149
  72. package/src/index.ts +27 -27
  73. package/src/utils/CheckOneUser/index.md +39 -39
  74. package/src/utils/CheckOneUser/index.ts +51 -51
  75. package/src/utils/requestUtils.ts +32 -32
  76. package/src/utils/utils.ts +22 -22
  77. package/tsconfig.json +29 -29
  78. package/typings.d.ts +4 -4
@@ -1,217 +1,217 @@
1
- import React, { useState } from 'react';
2
- import { Table, Tooltip, Typography } from 'antd';
3
- import { Resizable } from 'react-resizable';
4
- import ColumnSetting from './columnSetting';
5
- import { getItemDefaultWidth, handleTextOverflow } from './utils';
6
- import { noEmptyArray } from './utils';
7
- const { Text } = Typography;
8
- export default class ColumnSettingTable extends React.Component {
9
- state: any;
10
- constructor(props: any) {
11
- super(props);
12
- this.state = {
13
- showColumns: [],
14
- }
15
- }
16
-
17
- componentDidMount() {
18
- const { columns }: any = this.props;
19
- this.setInitialShowColumn(columns || [])
20
- }
21
-
22
- componentWillReceiveProps(nextProps: any) {
23
- // if (JSON.stringify(this.props.columns) !== JSON.stringify(nextProps.columns)) {
24
- // }
25
- this.setInitialShowColumn(nextProps.columns || [])
26
- }
27
-
28
- setInitialShowColumn = (columns: any[]) => {
29
- // 获取当前列表定义数据
30
- let columnConfig = this.getConfigFromlocalstorage();
31
- let showColumns = columnConfig.length ? columnConfig.map((item: any) => {
32
- let inner = columns.filter(innerItem => (
33
- innerItem.dataIndex && innerItem.dataIndex === item.dataIndex
34
- ) || (innerItem.key && innerItem.key === item.key))[0];
35
- return {
36
- ...inner,
37
- ...item,
38
- }
39
- }).filter((item: any) => !item.hidden)
40
- :
41
- (columns || []).filter((item: any) => !item.hidden);
42
- this.setState({
43
- showColumns,
44
- })
45
-
46
- }
47
-
48
- setShowColumns = (newColumns: Array<any>) => {
49
- this.setState({
50
- showColumns: [...newColumns]
51
- })
52
- }
53
-
54
- getConfigFromlocalstorage = () => {
55
- const { tableCode }: any = this.props;
56
- if (!tableCode) return [];
57
- let config = localStorage.getItem('columnCondition') || '[]';
58
- let configArray = JSON.parse(config);
59
- let configSetting = configArray.filter(
60
- (item:any) => item.code === tableCode,
61
- );
62
-
63
- if (configSetting.length) {
64
- return JSON.parse(configSetting[0].detail || '[]');
65
- }
66
- return [];
67
- };
68
-
69
- getTableSummaryInfo = () => {
70
- const { summary = undefined, rowSelection }: any = this.props;
71
- const { showColumns }: any = this.state;
72
- let summaryRow = rowSelection ? [{}, ...showColumns] : [...showColumns];
73
- let summaryInitial = summary().cont;
74
- let summaryDom: any = <Table.Summary.Row>
75
- {
76
- [...summaryRow].map((item: any, index: number) => {
77
- return (
78
- <Table.Summary.Cell index={index}>
79
- <Text type="danger">
80
- {
81
- summaryInitial.filter((inner:any) => inner.key === item.dataIndex || inner.key === item.key).length ?
82
- `${item.title}: ${summaryInitial.filter((inner:any) => inner.key === item.dataIndex || inner.key === item.key)[0].value}` : ''
83
-
84
- }
85
- </Text>
86
- </Table.Summary.Cell>
87
- )
88
- })
89
- }
90
- </Table.Summary.Row >;
91
- return () => summaryDom
92
- };
93
-
94
- handledynamicColumns = (col: any[]) => {
95
- let { dynamicColumns, modeType }: any = this.props;
96
- col = col.map((item: any) => {
97
- let target = dynamicColumns.find((d: any) => item.dataIndex === d.key || item.key === d.key)
98
- if (modeType === 'view' && target) {
99
- item.render = target?.render;
100
- }
101
- return { ...item };
102
- })
103
- return [...col]
104
- };
105
-
106
- handleResize = (index: any) => (_: any, { size }: any) => {
107
- let newColumns = this.state.showColumns.map((col: any) => ({ ...col }));
108
- const handleIndex = (arr: any, indexArr: any) => {
109
- let i = indexArr.shift();
110
- if (indexArr.length > 0) {
111
- handleIndex(arr[i].children, indexArr);
112
- } else {
113
- arr[i] = {
114
- ...arr[i],
115
- width: size.width,
116
- };
117
- if (arr[i].textOverflow) {
118
- arr[i].render = ({ text }: any) => handleTextOverflow(text, size.width);
119
- };
120
- }
121
- };
122
- handleIndex(newColumns, [...index]);
123
- this.setState({
124
- showColumns: [...newColumns]
125
- })
126
- };
127
-
128
- ResizeableTitle = (props: any) => {
129
- const { onResize, width, ...restProps } = props;
130
-
131
- if (!width) {
132
- return <th {...restProps} />;
133
- }
134
- return (
135
- <Resizable
136
- width={width}
137
- height={0}
138
- onResize={onResize}
139
- draggableOpts={{ enableUserSelectHack: false }}
140
- >
141
- <th {...restProps} />
142
- </Resizable>
143
- );
144
- }
145
-
146
- render() {
147
- const { columns, tableCode, summary = undefined, dynamicColumns = [], ...restProps }: any = this.props;
148
- let otherTableInfo = {
149
- ...restProps,
150
- };
151
- let showSummary = null;
152
- if (this.state.showColumns.length) {
153
- if (summary && summary().diy) {
154
- showSummary = this.getTableSummaryInfo();
155
- } else {
156
- showSummary = summary;
157
- }
158
- };
159
-
160
- const handleColumns = (arr: any, indexArr: any[]) => {
161
- arr.forEach((item: any, index: any) => {
162
- let indexArrInside = [...indexArr, index].filter((i: any) => i || i === 0)
163
- if (noEmptyArray(item.children)) {
164
- handleColumns(item.children, indexArrInside);
165
- } else {
166
- item.width = item.width || getItemDefaultWidth(item);
167
- item.onHeaderCell = (column: any) => ({
168
- ...item,
169
- width:
170
- typeof column.width === 'number'
171
- ? column.width
172
- : parseInt(column.width.replace('px', '')),
173
- onResize: this.handleResize(indexArrInside),
174
- });
175
- }
176
- })
177
- };
178
- let showCol = this.state.showColumns.map((item: any) => {
179
- return ({ ...item })
180
- })
181
- handleColumns(showCol, []);
182
- if (dynamicColumns.length) {
183
- showCol = this.handledynamicColumns(showCol);
184
- }
185
-
186
- otherTableInfo = {
187
- ...otherTableInfo,
188
- summary: showSummary,
189
- }
190
- return (
191
- <div>
192
- <div style={{ overflow: 'hidden', padding: '0 8px 10px 0' }}>
193
- <span style={{ float: 'right' }} className="ant-dropdown-link">
194
- <ColumnSetting
195
- setShowColumns={this.setShowColumns}
196
- showColumns={this.state.showColumns}
197
- datasource={columns || []}
198
- tableCode={tableCode}
199
- />
200
- </span>
201
- </div>
202
- <Table
203
- columns={showCol}
204
- components={{
205
- header: {
206
- cell: this.ResizeableTitle,
207
- },
208
- }}
209
- {
210
- ...otherTableInfo
211
- }
212
- />
213
- </div >
214
- )
215
- }
216
-
1
+ import React, { useState } from 'react';
2
+ import { Table, Tooltip, Typography } from 'antd';
3
+ import { Resizable } from 'react-resizable';
4
+ import ColumnSetting from './columnSetting';
5
+ import { getItemDefaultWidth, handleTextOverflow } from './utils';
6
+ import { noEmptyArray } from './utils';
7
+ const { Text } = Typography;
8
+ export default class ColumnSettingTable extends React.Component {
9
+ state: any;
10
+ constructor(props: any) {
11
+ super(props);
12
+ this.state = {
13
+ showColumns: [],
14
+ }
15
+ }
16
+
17
+ componentDidMount() {
18
+ const { columns }: any = this.props;
19
+ this.setInitialShowColumn(columns || [])
20
+ }
21
+
22
+ componentWillReceiveProps(nextProps: any) {
23
+ // if (JSON.stringify(this.props.columns) !== JSON.stringify(nextProps.columns)) {
24
+ // }
25
+ this.setInitialShowColumn(nextProps.columns || [])
26
+ }
27
+
28
+ setInitialShowColumn = (columns: any[]) => {
29
+ // 获取当前列表定义数据
30
+ let columnConfig = this.getConfigFromlocalstorage();
31
+ let showColumns = columnConfig.length ? columnConfig.map((item: any) => {
32
+ let inner = columns.filter(innerItem => (
33
+ innerItem.dataIndex && innerItem.dataIndex === item.dataIndex
34
+ ) || (innerItem.key && innerItem.key === item.key))[0];
35
+ return {
36
+ ...inner,
37
+ ...item,
38
+ }
39
+ }).filter((item: any) => !item.hidden)
40
+ :
41
+ (columns || []).filter((item: any) => !item.hidden);
42
+ this.setState({
43
+ showColumns,
44
+ })
45
+
46
+ }
47
+
48
+ setShowColumns = (newColumns: Array<any>) => {
49
+ this.setState({
50
+ showColumns: [...newColumns]
51
+ })
52
+ }
53
+
54
+ getConfigFromlocalstorage = () => {
55
+ const { tableCode }: any = this.props;
56
+ if (!tableCode) return [];
57
+ let config = localStorage.getItem('columnCondition') || '[]';
58
+ let configArray = JSON.parse(config);
59
+ let configSetting = configArray.filter(
60
+ (item:any) => item.code === tableCode,
61
+ );
62
+
63
+ if (configSetting.length) {
64
+ return JSON.parse(configSetting[0].detail || '[]');
65
+ }
66
+ return [];
67
+ };
68
+
69
+ getTableSummaryInfo = () => {
70
+ const { summary = undefined, rowSelection }: any = this.props;
71
+ const { showColumns }: any = this.state;
72
+ let summaryRow = rowSelection ? [{}, ...showColumns] : [...showColumns];
73
+ let summaryInitial = summary().cont;
74
+ let summaryDom: any = <Table.Summary.Row>
75
+ {
76
+ [...summaryRow].map((item: any, index: number) => {
77
+ return (
78
+ <Table.Summary.Cell index={index}>
79
+ <Text type="danger">
80
+ {
81
+ summaryInitial.filter((inner:any) => inner.key === item.dataIndex || inner.key === item.key).length ?
82
+ `${item.title}: ${summaryInitial.filter((inner:any) => inner.key === item.dataIndex || inner.key === item.key)[0].value}` : ''
83
+
84
+ }
85
+ </Text>
86
+ </Table.Summary.Cell>
87
+ )
88
+ })
89
+ }
90
+ </Table.Summary.Row >;
91
+ return () => summaryDom
92
+ };
93
+
94
+ handledynamicColumns = (col: any[]) => {
95
+ let { dynamicColumns, modeType }: any = this.props;
96
+ col = col.map((item: any) => {
97
+ let target = dynamicColumns.find((d: any) => item.dataIndex === d.key || item.key === d.key)
98
+ if (modeType === 'view' && target) {
99
+ item.render = target?.render;
100
+ }
101
+ return { ...item };
102
+ })
103
+ return [...col]
104
+ };
105
+
106
+ handleResize = (index: any) => (_: any, { size }: any) => {
107
+ let newColumns = this.state.showColumns.map((col: any) => ({ ...col }));
108
+ const handleIndex = (arr: any, indexArr: any) => {
109
+ let i = indexArr.shift();
110
+ if (indexArr.length > 0) {
111
+ handleIndex(arr[i].children, indexArr);
112
+ } else {
113
+ arr[i] = {
114
+ ...arr[i],
115
+ width: size.width,
116
+ };
117
+ if (arr[i].textOverflow) {
118
+ arr[i].render = ({ text }: any) => handleTextOverflow(text, size.width);
119
+ };
120
+ }
121
+ };
122
+ handleIndex(newColumns, [...index]);
123
+ this.setState({
124
+ showColumns: [...newColumns]
125
+ })
126
+ };
127
+
128
+ ResizeableTitle = (props: any) => {
129
+ const { onResize, width, ...restProps } = props;
130
+
131
+ if (!width) {
132
+ return <th {...restProps} />;
133
+ }
134
+ return (
135
+ <Resizable
136
+ width={width}
137
+ height={0}
138
+ onResize={onResize}
139
+ draggableOpts={{ enableUserSelectHack: false }}
140
+ >
141
+ <th {...restProps} />
142
+ </Resizable>
143
+ );
144
+ }
145
+
146
+ render() {
147
+ const { columns, tableCode, summary = undefined, dynamicColumns = [], ...restProps }: any = this.props;
148
+ let otherTableInfo = {
149
+ ...restProps,
150
+ };
151
+ let showSummary = null;
152
+ if (this.state.showColumns.length) {
153
+ if (summary && summary().diy) {
154
+ showSummary = this.getTableSummaryInfo();
155
+ } else {
156
+ showSummary = summary;
157
+ }
158
+ };
159
+
160
+ const handleColumns = (arr: any, indexArr: any[]) => {
161
+ arr.forEach((item: any, index: any) => {
162
+ let indexArrInside = [...indexArr, index].filter((i: any) => i || i === 0)
163
+ if (noEmptyArray(item.children)) {
164
+ handleColumns(item.children, indexArrInside);
165
+ } else {
166
+ item.width = item.width || getItemDefaultWidth(item);
167
+ item.onHeaderCell = (column: any) => ({
168
+ ...item,
169
+ width:
170
+ typeof column.width === 'number'
171
+ ? column.width
172
+ : parseInt(column.width.replace('px', '')),
173
+ onResize: this.handleResize(indexArrInside),
174
+ });
175
+ }
176
+ })
177
+ };
178
+ let showCol = this.state.showColumns.map((item: any) => {
179
+ return ({ ...item })
180
+ })
181
+ handleColumns(showCol, []);
182
+ if (dynamicColumns.length) {
183
+ showCol = this.handledynamicColumns(showCol);
184
+ }
185
+
186
+ otherTableInfo = {
187
+ ...otherTableInfo,
188
+ summary: showSummary,
189
+ }
190
+ return (
191
+ <div>
192
+ <div style={{ overflow: 'hidden', padding: '0 8px 10px 0' }}>
193
+ <span style={{ float: 'right' }} className="ant-dropdown-link">
194
+ <ColumnSetting
195
+ setShowColumns={this.setShowColumns}
196
+ showColumns={this.state.showColumns}
197
+ datasource={columns || []}
198
+ tableCode={tableCode}
199
+ />
200
+ </span>
201
+ </div>
202
+ <Table
203
+ columns={showCol}
204
+ components={{
205
+ header: {
206
+ cell: this.ResizeableTitle,
207
+ },
208
+ }}
209
+ {
210
+ ...otherTableInfo
211
+ }
212
+ />
213
+ </div >
214
+ )
215
+ }
216
+
217
217
  }