@bit-sun/business-component 2.1.4 → 2.1.5

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 (137) hide show
  1. package/.editorconfig +16 -16
  2. package/.fatherrc.ts +5 -5
  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/components/Functional/SearchSelect/utils.d.ts +1 -0
  9. package/dist/index.esm.js +15 -6
  10. package/dist/index.js +15 -6
  11. package/docs/index.md +21 -21
  12. package/lib/assets/drag.svg +17 -17
  13. package/lib/assets/exportFail.svg +37 -37
  14. package/lib/assets/exportProcessing.svg +28 -28
  15. package/lib/assets/exportSuccess.svg +34 -34
  16. package/lib/assets/label_icon_bottom.svg +25 -25
  17. package/lib/assets/upExport.svg +22 -22
  18. package/package.json +71 -71
  19. package/src/assets/32.svg +27 -27
  20. package/src/assets/addIcon.svg +17 -17
  21. package/src/assets/allfunc.svg +27 -27
  22. package/src/assets/arrowRight.svg +24 -24
  23. package/src/assets/btn-delete.svg +29 -29
  24. package/src/assets/btn-edit.svg +19 -19
  25. package/src/assets/btn-more.svg +17 -17
  26. package/src/assets/btn-submit.svg +19 -19
  27. package/src/assets/caidan.svg +11 -11
  28. package/src/assets/close.svg +26 -26
  29. package/src/assets/drag.svg +17 -17
  30. package/src/assets/exportFail.svg +37 -37
  31. package/src/assets/exportProcessing.svg +28 -28
  32. package/src/assets/exportSuccess.svg +34 -34
  33. package/src/assets/fixed-left-active.svg +11 -11
  34. package/src/assets/fixed-left.svg +15 -15
  35. package/src/assets/fixed-right-active.svg +11 -11
  36. package/src/assets/fixed-right.svg +15 -15
  37. package/src/assets/guanbi.svg +15 -15
  38. package/src/assets/icon-quanping.svg +15 -15
  39. package/src/assets/icon-shezhi.svg +17 -17
  40. package/src/assets/label_icon_bottom.svg +25 -25
  41. package/src/assets/list-no-img.svg +21 -21
  42. package/src/assets/morentouxiang-32.svg +23 -23
  43. package/src/assets/scanning.svg +24 -24
  44. package/src/assets/upExport.svg +22 -22
  45. package/src/components/Business/AddSelectBusiness/index.md +41 -41
  46. package/src/components/Business/AddSelectBusiness/index.tsx +290 -290
  47. package/src/components/Business/BsLayouts/Components/AllFunc/drawContent.tsx +111 -111
  48. package/src/components/Business/BsLayouts/Components/AllFunc/index.less +153 -153
  49. package/src/components/Business/BsLayouts/Components/AllFunc/index.tsx +70 -70
  50. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/index.less +90 -90
  51. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/index.tsx +37 -37
  52. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/leftTree.tsx +242 -242
  53. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/rightTree.tsx +384 -384
  54. package/src/components/Business/BsLayouts/Components/CustomerMenu/globalMenu/DrawContent.tsx +285 -285
  55. package/src/components/Business/BsLayouts/Components/CustomerMenu/globalMenu/customMenuHeader.tsx +74 -74
  56. package/src/components/Business/BsLayouts/Components/CustomerMenu/globalMenu/drawContent.less +170 -170
  57. package/src/components/Business/BsLayouts/Components/CustomerMenu/index.less +64 -64
  58. package/src/components/Business/BsLayouts/Components/CustomerMenu/index.tsx +153 -153
  59. package/src/components/Business/BsLayouts/Components/GlobalHeader/index.less +72 -72
  60. package/src/components/Business/BsLayouts/Components/GlobalHeader/index.tsx +157 -157
  61. package/src/components/Business/BsLayouts/Components/RightContent/LoginModal.tsx +85 -85
  62. package/src/components/Business/BsLayouts/Components/RightContent/home.less +218 -218
  63. package/src/components/Business/BsLayouts/Components/RightContent/index.tsx +156 -156
  64. package/src/components/Business/BsLayouts/Components/SearchFunc/index.less +160 -160
  65. package/src/components/Business/BsLayouts/Components/SearchFunc/index.tsx +75 -75
  66. package/src/components/Business/BsLayouts/index.less +79 -79
  67. package/src/components/Business/BsLayouts/index.tsx +1469 -1469
  68. package/src/components/Business/BsLayouts/service.ts +10 -10
  69. package/src/components/Business/BsLayouts/utils.tsx +210 -210
  70. package/src/components/Business/BsSulaQueryTable/index.less +219 -219
  71. package/src/components/Business/BsSulaQueryTable/index.tsx +505 -505
  72. package/src/components/Business/BsSulaQueryTable/setting.tsx +799 -799
  73. package/src/components/Business/BsSulaQueryTable/utils.less +65 -65
  74. package/src/components/Business/BsSulaQueryTable/utils.tsx +688 -688
  75. package/src/components/Business/CommodityEntry/index.md +70 -70
  76. package/src/components/Business/CommodityEntry/index.tsx +80 -80
  77. package/src/components/Business/CommonAlert/index.tsx +23 -23
  78. package/src/components/Business/CommonGuideWrapper/index.less +111 -111
  79. package/src/components/Business/CommonGuideWrapper/index.md +39 -39
  80. package/src/components/Business/CommonGuideWrapper/index.tsx +83 -83
  81. package/src/components/Business/DetailPageWrapper/index.less +79 -79
  82. package/src/components/Business/DetailPageWrapper/index.tsx +335 -335
  83. package/src/components/Business/DetailPageWrapper/utils.tsx +100 -100
  84. package/src/components/Business/HomePageWrapper/index.less +33 -33
  85. package/src/components/Business/HomePageWrapper/index.md +45 -45
  86. package/src/components/Business/HomePageWrapper/index.tsx +162 -162
  87. package/src/components/Business/SearchSelect/BusinessUtils.ts +1458 -1458
  88. package/src/components/Business/SearchSelect/common.ts +53 -53
  89. package/src/components/Business/SearchSelect/index.md +1137 -1137
  90. package/src/components/Business/SearchSelect/index.tsx +51 -51
  91. package/src/components/Business/SearchSelect/utils.ts +100 -100
  92. package/src/components/Business/StateFlow/index.less +130 -130
  93. package/src/components/Business/StateFlow/index.md +60 -60
  94. package/src/components/Business/StateFlow/index.tsx +29 -29
  95. package/src/components/Business/TreeSearchSelect/index.md +126 -126
  96. package/src/components/Business/TreeSearchSelect/index.tsx +34 -34
  97. package/src/components/Business/TreeSearchSelect/utils.ts +60 -60
  98. package/src/components/Business/columnSettingTable/columnSetting.tsx +763 -763
  99. package/src/components/Business/columnSettingTable/index.less +247 -247
  100. package/src/components/Business/columnSettingTable/index.md +357 -357
  101. package/src/components/Business/columnSettingTable/index.tsx +232 -232
  102. package/src/components/Business/columnSettingTable/sulaSettingTable.tsx +240 -240
  103. package/src/components/Business/columnSettingTable/utils.tsx +68 -68
  104. package/src/components/Functional/AddSelect/index.less +367 -367
  105. package/src/components/Functional/AddSelect/index.md +122 -122
  106. package/src/components/Functional/AddSelect/index.tsx +992 -992
  107. package/src/components/Functional/BillEntry/index.less +371 -371
  108. package/src/components/Functional/BillEntry/index.md +39 -39
  109. package/src/components/Functional/BillEntry/index.tsx +643 -643
  110. package/src/components/Functional/DataImport/index.less +63 -63
  111. package/src/components/Functional/DataImport/index.md +44 -44
  112. package/src/components/Functional/DataImport/index.tsx +695 -689
  113. package/src/components/Functional/DataValidation/index.less +63 -63
  114. package/src/components/Functional/DataValidation/index.md +39 -38
  115. package/src/components/Functional/DataValidation/index.tsx +687 -681
  116. package/src/components/Functional/ExportFunctions/ExportIcon/index.md +37 -37
  117. package/src/components/Functional/ExportFunctions/ExportIcon/index.tsx +59 -59
  118. package/src/components/Functional/QueryMutipleInput/index.less +37 -37
  119. package/src/components/Functional/QueryMutipleInput/index.md +33 -33
  120. package/src/components/Functional/QueryMutipleInput/index.tsx +128 -128
  121. package/src/components/Functional/SearchSelect/index.less +115 -115
  122. package/src/components/Functional/SearchSelect/index.md +141 -141
  123. package/src/components/Functional/SearchSelect/index.tsx +813 -812
  124. package/src/components/Functional/SearchSelect/utils.ts +6 -0
  125. package/src/components/Functional/TreeSearchSelect/index.md +47 -47
  126. package/src/components/Functional/TreeSearchSelect/index.tsx +149 -149
  127. package/src/index.ts +31 -31
  128. package/src/styles/bsDefault.less +1906 -1906
  129. package/src/utils/CheckOneUser/index.md +39 -39
  130. package/src/utils/CheckOneUser/index.ts +51 -51
  131. package/src/utils/checkUtils.ts +39 -39
  132. package/src/utils/enumConfig.ts +10 -10
  133. package/src/utils/index.ts +2 -2
  134. package/src/utils/requestUtils.ts +33 -33
  135. package/src/utils/utils.ts +57 -57
  136. package/tsconfig.json +29 -29
  137. package/typings.d.ts +4 -4
@@ -1,241 +1,241 @@
1
- import React, { useState } from 'react';
2
- import { Table as SulaTable, request } from 'bssula';
3
- import { Resizable } from 'react-resizable';
4
- import ColumnSetting from './columnSetting';
5
- import { getItemDefaultWidth, handleTextOverflow } from './utils';
6
- import { noEmptyArray } from './utils';
7
- import {
8
- Table,
9
- Typography,
10
- } from 'antd';
11
- import ENUM from '@/utils/enumConfig';
12
- const { Text } = Typography;
13
- export default class ColumnSettingSulaTable extends React.Component {
14
- sulaTableRef: React.RefObject<unknown>;
15
- state: any;
16
- constructor(props: any) {
17
- super(props);
18
- this.state = {
19
- showColumns: [],
20
- }
21
- this.sulaTableRef = React.createRef();
22
- }
23
-
24
- componentDidMount() {
25
- const { columns }: any = this.props;
26
- this.setInitialShowColumn(columns || [])
27
- }
28
-
29
- componentWillReceiveProps(nextProps: any) {
30
- // if (JSON.stringify(this.props.columns) !== JSON.stringify(nextProps.columns)) {
31
- // }
32
- this.setInitialShowColumn(nextProps.columns || [])
33
- }
34
-
35
- setInitialShowColumn = (columns: any[]) => {
36
- // 获取当前列表定义数据
37
- let columnConfig = this.getConfigFromlocalstorage();
38
- let showColumns = columnConfig.length ? columnConfig.map((item:any) => {
39
- let inner = columns.filter(innerItem => (
40
- innerItem.dataIndex && innerItem.dataIndex === item.dataIndex
41
- ) || (innerItem.key && innerItem.key === item.key))[0];
42
- return {
43
- ...inner,
44
- ...item,
45
- }
46
- }).filter((item: any) => !item.hidden)
47
- :
48
- (columns || []).filter((item: any) => !item.hidden);
49
- this.setState({
50
- showColumns,
51
- })
52
-
53
- }
54
-
55
- setShowColumns = (newColumns: Array<any>) => {
56
- this.setState({
57
- showColumns: [...newColumns]
58
- })
59
- }
60
-
61
- getConfigFromlocalstorage = () => {
62
- const { tableCode }:any = this.props;
63
- if (!tableCode) return [];
64
- let config = localStorage.getItem(ENUM.BROWSER_CACHE.COLUMN_CONDITION) || '[]';
65
- let configArray = JSON.parse(config);
66
- let configSetting = configArray.filter(
67
- (item: any) => item.code === tableCode,
68
- );
69
-
70
- if (configSetting.length) {
71
- return JSON.parse(configSetting[0].detail || '[]');
72
- }
73
- return [];
74
- };
75
-
76
- getTableSummaryInfo = () => {
77
- const { summary = undefined, rowSelection }: any = this.props;
78
- const { showColumns }: any = this.state;
79
- let summaryRow = rowSelection ? [{}, ...showColumns] : [...showColumns];
80
- let summaryInitial = summary().cont;
81
- let summaryDom: any = <Table.Summary fixed>
82
- <Table.Summary.Row>
83
- {
84
- [...summaryRow].map((item: any, index: number) => {
85
- return (
86
- <Table.Summary.Cell index={rowSelection ? index : index - 1}>
87
- <Text type="danger">
88
- {
89
- summaryInitial.filter((inner: any) => inner.key === item.dataIndex || inner.key === item.key).length ?
90
- `${item.title}: ${summaryInitial.filter((inner: any) => inner.key === item.dataIndex || inner.key === item.key)[0].value}` : ''
91
-
92
- }
93
- </Text>
94
- </Table.Summary.Cell>
95
- )
96
- })
97
- }
98
- </Table.Summary.Row >
99
- </Table.Summary>
100
- return () => summaryDom
101
- };
102
-
103
- handledynamicColumns = (col: any[]) => {
104
- let { dynamicColumns, modeType }: any = this.props;
105
- col = col.map((item: any) => {
106
- let target = dynamicColumns.find((d: any) => item.dataIndex === d.key || item.key === d.key)
107
- if (modeType === 'view' && target) {
108
- item.render = target?.render;
109
- }
110
- return { ...item };
111
- })
112
- return [...col]
113
- };
114
-
115
- handleResize = (index: any) => (_: any, { size }: any) => {
116
- let newColumns = this.state.showColumns.map((col: any) => ({ ...col }));
117
- const handleIndex = (arr: any, indexArr: any) => {
118
- let i = indexArr.shift();
119
- if (indexArr.length > 0) {
120
- handleIndex(arr[i].children, indexArr);
121
- } else {
122
- arr[i] = {
123
- ...arr[i],
124
- width: size.width,
125
- };
126
- if (arr[i].textOverflow) {
127
- arr[i].render = ({ text }: any) => handleTextOverflow(text, size.width);
128
- };
129
- }
130
- };
131
- handleIndex(newColumns, [...index]);
132
- this.setState({
133
- showColumns: [...newColumns]
134
- })
135
- };
136
-
137
- ResizeableTitle = (props: any) => {
138
- const { onResize, width, ...restProps } = props;
139
-
140
- if (!width) {
141
- return <th {...restProps} />;
142
- }
143
- return (
144
- <Resizable
145
- width={width}
146
- height={0}
147
- onResize={onResize}
148
- draggableOpts={{ enableUserSelectHack: false }}
149
- >
150
- <th {...restProps} />
151
- </Resizable>
152
- );
153
- }
154
-
155
- getTableScrollXWidth = (cols: any[]) => {
156
- if (cols.every((item: any) => item.width)) {
157
- return cols.reduce((cur: any, obj: any) => cur += obj.width, 0)
158
- } else {
159
- return 'max-content'
160
- }
161
- };
162
-
163
- render() {
164
- const { style=null, columns, tableCode, summary = undefined, dynamicColumns = [], scroll={}, ...restProps }: any = this.props;
165
- let otherTableInfo = {
166
- ...restProps,
167
- };
168
- let showSummary = null;
169
- if (this.state.showColumns.length) {
170
- if (summary && summary().diy) {
171
- showSummary = this.getTableSummaryInfo();
172
- } else {
173
- showSummary = summary;
174
- }
175
- };
176
-
177
- const handleColumns = (arr: any, indexArr: any[]) => {
178
- arr.forEach((item: any, index: any) => {
179
- let indexArrInside = [...indexArr, index].filter((i: any) => i || i === 0)
180
- if (noEmptyArray(item.children)) {
181
- handleColumns(item.children, indexArrInside);
182
- } else {
183
- item.width = item.width || getItemDefaultWidth(item);
184
- item.onHeaderCell = (column: any) => ({
185
- ...item,
186
- width:
187
- typeof column.width === 'number'
188
- ? column.width
189
- : parseInt(column.width.replace('px', '')),
190
- onResize: this.handleResize(indexArrInside),
191
- });
192
- }
193
- })
194
- };
195
- let showCol = this.state.showColumns.map((item: any) => {
196
- return ({ ...item })
197
- })
198
- handleColumns(showCol, []);
199
- if (dynamicColumns.length) {
200
- showCol = this.handledynamicColumns(showCol);
201
- }
202
-
203
- otherTableInfo = {
204
- ...otherTableInfo,
205
- scroll: {
206
- y: 400,
207
- ...scroll,
208
- x: restProps.overScrollX || this.getTableScrollXWidth(showCol)
209
- },
210
- summary: showSummary,
211
- }
212
- return (
213
- <div>
214
- <div style={{ overflow: 'hidden', padding: '0 8px 10px 0' }}>
215
- <span style={{ float: 'right' }} className="ant-dropdown-link">
216
- <ColumnSetting
217
- setShowColumns={this.setShowColumns}
218
- showColumns={this.state.showColumns}
219
- datasource={columns || []}
220
- tableCode={tableCode}
221
- />
222
- </span>
223
- </div>
224
- <SulaTable
225
- ref={this.sulaTableRef}
226
- style={style}
227
- columns={showCol}
228
- components={{
229
- header: {
230
- cell: this.ResizeableTitle,
231
- },
232
- }}
233
- {
234
- ...otherTableInfo
235
- }
236
- />
237
- </div >
238
- )
239
- }
240
-
1
+ import React, { useState } from 'react';
2
+ import { Table as SulaTable, request } from 'bssula';
3
+ import { Resizable } from 'react-resizable';
4
+ import ColumnSetting from './columnSetting';
5
+ import { getItemDefaultWidth, handleTextOverflow } from './utils';
6
+ import { noEmptyArray } from './utils';
7
+ import {
8
+ Table,
9
+ Typography,
10
+ } from 'antd';
11
+ import ENUM from '@/utils/enumConfig';
12
+ const { Text } = Typography;
13
+ export default class ColumnSettingSulaTable extends React.Component {
14
+ sulaTableRef: React.RefObject<unknown>;
15
+ state: any;
16
+ constructor(props: any) {
17
+ super(props);
18
+ this.state = {
19
+ showColumns: [],
20
+ }
21
+ this.sulaTableRef = React.createRef();
22
+ }
23
+
24
+ componentDidMount() {
25
+ const { columns }: any = this.props;
26
+ this.setInitialShowColumn(columns || [])
27
+ }
28
+
29
+ componentWillReceiveProps(nextProps: any) {
30
+ // if (JSON.stringify(this.props.columns) !== JSON.stringify(nextProps.columns)) {
31
+ // }
32
+ this.setInitialShowColumn(nextProps.columns || [])
33
+ }
34
+
35
+ setInitialShowColumn = (columns: any[]) => {
36
+ // 获取当前列表定义数据
37
+ let columnConfig = this.getConfigFromlocalstorage();
38
+ let showColumns = columnConfig.length ? columnConfig.map((item:any) => {
39
+ let inner = columns.filter(innerItem => (
40
+ innerItem.dataIndex && innerItem.dataIndex === item.dataIndex
41
+ ) || (innerItem.key && innerItem.key === item.key))[0];
42
+ return {
43
+ ...inner,
44
+ ...item,
45
+ }
46
+ }).filter((item: any) => !item.hidden)
47
+ :
48
+ (columns || []).filter((item: any) => !item.hidden);
49
+ this.setState({
50
+ showColumns,
51
+ })
52
+
53
+ }
54
+
55
+ setShowColumns = (newColumns: Array<any>) => {
56
+ this.setState({
57
+ showColumns: [...newColumns]
58
+ })
59
+ }
60
+
61
+ getConfigFromlocalstorage = () => {
62
+ const { tableCode }:any = this.props;
63
+ if (!tableCode) return [];
64
+ let config = localStorage.getItem(ENUM.BROWSER_CACHE.COLUMN_CONDITION) || '[]';
65
+ let configArray = JSON.parse(config);
66
+ let configSetting = configArray.filter(
67
+ (item: any) => item.code === tableCode,
68
+ );
69
+
70
+ if (configSetting.length) {
71
+ return JSON.parse(configSetting[0].detail || '[]');
72
+ }
73
+ return [];
74
+ };
75
+
76
+ getTableSummaryInfo = () => {
77
+ const { summary = undefined, rowSelection }: any = this.props;
78
+ const { showColumns }: any = this.state;
79
+ let summaryRow = rowSelection ? [{}, ...showColumns] : [...showColumns];
80
+ let summaryInitial = summary().cont;
81
+ let summaryDom: any = <Table.Summary fixed>
82
+ <Table.Summary.Row>
83
+ {
84
+ [...summaryRow].map((item: any, index: number) => {
85
+ return (
86
+ <Table.Summary.Cell index={rowSelection ? index : index - 1}>
87
+ <Text type="danger">
88
+ {
89
+ summaryInitial.filter((inner: any) => inner.key === item.dataIndex || inner.key === item.key).length ?
90
+ `${item.title}: ${summaryInitial.filter((inner: any) => inner.key === item.dataIndex || inner.key === item.key)[0].value}` : ''
91
+
92
+ }
93
+ </Text>
94
+ </Table.Summary.Cell>
95
+ )
96
+ })
97
+ }
98
+ </Table.Summary.Row >
99
+ </Table.Summary>
100
+ return () => summaryDom
101
+ };
102
+
103
+ handledynamicColumns = (col: any[]) => {
104
+ let { dynamicColumns, modeType }: any = this.props;
105
+ col = col.map((item: any) => {
106
+ let target = dynamicColumns.find((d: any) => item.dataIndex === d.key || item.key === d.key)
107
+ if (modeType === 'view' && target) {
108
+ item.render = target?.render;
109
+ }
110
+ return { ...item };
111
+ })
112
+ return [...col]
113
+ };
114
+
115
+ handleResize = (index: any) => (_: any, { size }: any) => {
116
+ let newColumns = this.state.showColumns.map((col: any) => ({ ...col }));
117
+ const handleIndex = (arr: any, indexArr: any) => {
118
+ let i = indexArr.shift();
119
+ if (indexArr.length > 0) {
120
+ handleIndex(arr[i].children, indexArr);
121
+ } else {
122
+ arr[i] = {
123
+ ...arr[i],
124
+ width: size.width,
125
+ };
126
+ if (arr[i].textOverflow) {
127
+ arr[i].render = ({ text }: any) => handleTextOverflow(text, size.width);
128
+ };
129
+ }
130
+ };
131
+ handleIndex(newColumns, [...index]);
132
+ this.setState({
133
+ showColumns: [...newColumns]
134
+ })
135
+ };
136
+
137
+ ResizeableTitle = (props: any) => {
138
+ const { onResize, width, ...restProps } = props;
139
+
140
+ if (!width) {
141
+ return <th {...restProps} />;
142
+ }
143
+ return (
144
+ <Resizable
145
+ width={width}
146
+ height={0}
147
+ onResize={onResize}
148
+ draggableOpts={{ enableUserSelectHack: false }}
149
+ >
150
+ <th {...restProps} />
151
+ </Resizable>
152
+ );
153
+ }
154
+
155
+ getTableScrollXWidth = (cols: any[]) => {
156
+ if (cols.every((item: any) => item.width)) {
157
+ return cols.reduce((cur: any, obj: any) => cur += obj.width, 0)
158
+ } else {
159
+ return 'max-content'
160
+ }
161
+ };
162
+
163
+ render() {
164
+ const { style=null, columns, tableCode, summary = undefined, dynamicColumns = [], scroll={}, ...restProps }: any = this.props;
165
+ let otherTableInfo = {
166
+ ...restProps,
167
+ };
168
+ let showSummary = null;
169
+ if (this.state.showColumns.length) {
170
+ if (summary && summary().diy) {
171
+ showSummary = this.getTableSummaryInfo();
172
+ } else {
173
+ showSummary = summary;
174
+ }
175
+ };
176
+
177
+ const handleColumns = (arr: any, indexArr: any[]) => {
178
+ arr.forEach((item: any, index: any) => {
179
+ let indexArrInside = [...indexArr, index].filter((i: any) => i || i === 0)
180
+ if (noEmptyArray(item.children)) {
181
+ handleColumns(item.children, indexArrInside);
182
+ } else {
183
+ item.width = item.width || getItemDefaultWidth(item);
184
+ item.onHeaderCell = (column: any) => ({
185
+ ...item,
186
+ width:
187
+ typeof column.width === 'number'
188
+ ? column.width
189
+ : parseInt(column.width.replace('px', '')),
190
+ onResize: this.handleResize(indexArrInside),
191
+ });
192
+ }
193
+ })
194
+ };
195
+ let showCol = this.state.showColumns.map((item: any) => {
196
+ return ({ ...item })
197
+ })
198
+ handleColumns(showCol, []);
199
+ if (dynamicColumns.length) {
200
+ showCol = this.handledynamicColumns(showCol);
201
+ }
202
+
203
+ otherTableInfo = {
204
+ ...otherTableInfo,
205
+ scroll: {
206
+ y: 400,
207
+ ...scroll,
208
+ x: restProps.overScrollX || this.getTableScrollXWidth(showCol)
209
+ },
210
+ summary: showSummary,
211
+ }
212
+ return (
213
+ <div>
214
+ <div style={{ overflow: 'hidden', padding: '0 8px 10px 0' }}>
215
+ <span style={{ float: 'right' }} className="ant-dropdown-link">
216
+ <ColumnSetting
217
+ setShowColumns={this.setShowColumns}
218
+ showColumns={this.state.showColumns}
219
+ datasource={columns || []}
220
+ tableCode={tableCode}
221
+ />
222
+ </span>
223
+ </div>
224
+ <SulaTable
225
+ ref={this.sulaTableRef}
226
+ style={style}
227
+ columns={showCol}
228
+ components={{
229
+ header: {
230
+ cell: this.ResizeableTitle,
231
+ },
232
+ }}
233
+ {
234
+ ...otherTableInfo
235
+ }
236
+ />
237
+ </div >
238
+ )
239
+ }
240
+
241
241
  }
@@ -1,69 +1,69 @@
1
- import React from 'react';
2
- import {
3
- Tooltip,
4
- } from 'antd';
5
- /**
6
- * 非空数组
7
- * @param arr 要判断的数据
8
- * @returns boolean
9
- */
10
- export const noEmptyArray = (arr: any[]) =>
11
- Array.isArray(arr) && arr.length > 0;
12
-
13
- //设置queryTable默认列宽
14
- export const getItemDefaultWidth = (item: any) => {
15
- let defaultWidth = 200;
16
- let lowerCaseKey = (item.key || item.dataIndex).toLowerCase();
17
- switch (true) {
18
- case item?.title === '操作' || lowerCaseKey === 'operate':
19
- defaultWidth = 60;
20
- break;
21
- case lowerCaseKey.indexOf('number') > -1:
22
- case lowerCaseKey.indexOf('quantity') > -1:
23
- case lowerCaseKey.indexOf('amount') > -1:
24
- defaultWidth = 90;
25
- break;
26
- case (lowerCaseKey.indexOf('no') > -1):
27
- defaultWidth = 200;
28
- break;
29
- case lowerCaseKey.indexOf('code') > -1:
30
- defaultWidth = 170;
31
- break;
32
- case lowerCaseKey.indexOf('time') > -1:
33
- defaultWidth = 130;
34
- break;
35
- case lowerCaseKey.indexOf('status') > -1:
36
- defaultWidth = 100;
37
- break;
38
- case lowerCaseKey.indexOf('user') > -1:
39
- defaultWidth = 130;
40
- break;
41
- default:
42
- break;
43
- }
44
- return defaultWidth;
45
- };
46
-
47
- // 带有toptile 清提示 ...
48
- export const handleTextOverflow = (
49
- text: string | undefined,
50
- width: number = 130,
51
- ) => {
52
- return (
53
- <Tooltip title={text || '- -'}>
54
- <span
55
- style={{
56
- width: width ? width + 'px' : '130px',
57
- display: 'inline-block',
58
- textOverflow: 'ellipsis',
59
- overflow: 'hidden',
60
- whiteSpace: 'nowrap',
61
- position: 'relative',
62
- top: '5px',
63
- }}
64
- >
65
- {text || '- -'}
66
- </span>
67
- </Tooltip>
68
- );
1
+ import React from 'react';
2
+ import {
3
+ Tooltip,
4
+ } from 'antd';
5
+ /**
6
+ * 非空数组
7
+ * @param arr 要判断的数据
8
+ * @returns boolean
9
+ */
10
+ export const noEmptyArray = (arr: any[]) =>
11
+ Array.isArray(arr) && arr.length > 0;
12
+
13
+ //设置queryTable默认列宽
14
+ export const getItemDefaultWidth = (item: any) => {
15
+ let defaultWidth = 200;
16
+ let lowerCaseKey = (item.key || item.dataIndex).toLowerCase();
17
+ switch (true) {
18
+ case item?.title === '操作' || lowerCaseKey === 'operate':
19
+ defaultWidth = 60;
20
+ break;
21
+ case lowerCaseKey.indexOf('number') > -1:
22
+ case lowerCaseKey.indexOf('quantity') > -1:
23
+ case lowerCaseKey.indexOf('amount') > -1:
24
+ defaultWidth = 90;
25
+ break;
26
+ case (lowerCaseKey.indexOf('no') > -1):
27
+ defaultWidth = 200;
28
+ break;
29
+ case lowerCaseKey.indexOf('code') > -1:
30
+ defaultWidth = 170;
31
+ break;
32
+ case lowerCaseKey.indexOf('time') > -1:
33
+ defaultWidth = 130;
34
+ break;
35
+ case lowerCaseKey.indexOf('status') > -1:
36
+ defaultWidth = 100;
37
+ break;
38
+ case lowerCaseKey.indexOf('user') > -1:
39
+ defaultWidth = 130;
40
+ break;
41
+ default:
42
+ break;
43
+ }
44
+ return defaultWidth;
45
+ };
46
+
47
+ // 带有toptile 清提示 ...
48
+ export const handleTextOverflow = (
49
+ text: string | undefined,
50
+ width: number = 130,
51
+ ) => {
52
+ return (
53
+ <Tooltip title={text || '- -'}>
54
+ <span
55
+ style={{
56
+ width: width ? width + 'px' : '130px',
57
+ display: 'inline-block',
58
+ textOverflow: 'ellipsis',
59
+ overflow: 'hidden',
60
+ whiteSpace: 'nowrap',
61
+ position: 'relative',
62
+ top: '5px',
63
+ }}
64
+ >
65
+ {text || '- -'}
66
+ </span>
67
+ </Tooltip>
68
+ );
69
69
  };