@bit-sun/business-component 1.2.4-alpha.1 → 1.2.4

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 (167) hide show
  1. package/.fatherrc.ts +0 -1
  2. package/.umirc.ts +16 -31
  3. package/dist/components/Business/SearchSelect/BusinessUtils.d.ts +1 -1
  4. package/dist/components/Business/SearchSelect/common.d.ts +1 -5
  5. package/dist/components/Business/SearchSelect/index.d.ts +1 -1
  6. package/dist/components/Business/SearchSelect/utils.d.ts +1 -2
  7. package/dist/components/Functional/SearchSelect/index.d.ts +1 -2
  8. package/dist/index.d.ts +0 -15
  9. package/dist/index.esm.js +4456 -19407
  10. package/dist/index.js +4443 -19411
  11. package/package.json +5 -26
  12. package/src/components/Business/CommodityEntry/index.md +3 -4
  13. package/src/components/Business/CommodityEntry/index.tsx +2 -7
  14. package/src/components/Business/SearchSelect/BusinessUtils.ts +14 -107
  15. package/src/components/Business/SearchSelect/common.ts +1 -20
  16. package/src/components/Business/SearchSelect/index.md +30 -60
  17. package/src/components/Business/SearchSelect/index.tsx +12 -21
  18. package/src/components/Business/SearchSelect/utils.ts +4 -30
  19. package/src/components/Functional/DataImport/index.tsx +2 -1
  20. package/src/components/Functional/DataValidation/index.tsx +1 -1
  21. package/src/components/Functional/SearchSelect/index.tsx +121 -218
  22. package/src/index.ts +6 -15
  23. package/typings.d.ts +0 -3
  24. package/dist/components/Business/AddSelectBusiness/index.d.ts +0 -1
  25. package/dist/components/Business/BsLayouts/Components/AllFunc/drawContent.d.ts +0 -4
  26. package/dist/components/Business/BsLayouts/Components/AllFunc/index.d.ts +0 -4
  27. package/dist/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/index.d.ts +0 -4
  28. package/dist/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/leftTree.d.ts +0 -17
  29. package/dist/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/rightTree.d.ts +0 -30
  30. package/dist/components/Business/BsLayouts/Components/CustomerMenu/globalMenu/DrawContent.d.ts +0 -3
  31. package/dist/components/Business/BsLayouts/Components/CustomerMenu/globalMenu/customMenuHeader.d.ts +0 -2
  32. package/dist/components/Business/BsLayouts/Components/CustomerMenu/index.d.ts +0 -4
  33. package/dist/components/Business/BsLayouts/Components/GlobalHeader/index.d.ts +0 -4
  34. package/dist/components/Business/BsLayouts/Components/RightContent/LoginModal.d.ts +0 -2
  35. package/dist/components/Business/BsLayouts/Components/RightContent/index.d.ts +0 -8
  36. package/dist/components/Business/BsLayouts/Components/SearchFunc/index.d.ts +0 -8
  37. package/dist/components/Business/BsLayouts/index.d.ts +0 -18
  38. package/dist/components/Business/BsLayouts/service.d.ts +0 -1
  39. package/dist/components/Business/BsLayouts/utils.d.ts +0 -13
  40. package/dist/components/Business/BsSulaQueryTable/index.d.ts +0 -2
  41. package/dist/components/Business/BsSulaQueryTable/setting.d.ts +0 -58
  42. package/dist/components/Business/BsSulaQueryTable/utils.d.ts +0 -98
  43. package/dist/components/Business/CommonAlert/index.d.ts +0 -3
  44. package/dist/components/Business/CommonGuideWrapper/index.d.ts +0 -6
  45. package/dist/components/Business/DetailPageWrapper/index.d.ts +0 -9
  46. package/dist/components/Business/DetailPageWrapper/utils.d.ts +0 -8
  47. package/dist/components/Business/HomePageWrapper/index.d.ts +0 -3
  48. package/dist/components/Business/StateFlow/index.d.ts +0 -3
  49. package/dist/components/Business/TreeSearchSelect/index.d.ts +0 -3
  50. package/dist/components/Business/TreeSearchSelect/utils.d.ts +0 -2
  51. package/dist/components/Business/columnSettingTable/columnSetting.d.ts +0 -54
  52. package/dist/components/Business/columnSettingTable/index.d.ts +0 -16
  53. package/dist/components/Business/columnSettingTable/sulaSettingTable.d.ts +0 -17
  54. package/dist/components/Business/columnSettingTable/utils.d.ts +0 -8
  55. package/dist/components/Functional/AddSelect/index.d.ts +0 -3
  56. package/dist/components/Functional/BillEntry/index.d.ts +0 -4
  57. package/dist/components/Functional/ExportFunctions/ExportIcon/index.d.ts +0 -12
  58. package/dist/components/Functional/TreeSearchSelect/index.d.ts +0 -2
  59. package/dist/utils/enumConfig.d.ts +0 -10
  60. package/dist/utils/requestUtils.d.ts +0 -1
  61. package/dist/utils/utils.d.ts +0 -3
  62. package/lib/assets/arrow_top.png +0 -0
  63. package/lib/assets/drag.svg +0 -17
  64. package/lib/assets/exportFail.svg +0 -38
  65. package/lib/assets/exportProcessing.svg +0 -29
  66. package/lib/assets/exportSuccess.svg +0 -35
  67. package/lib/assets/exportlogo.png +0 -0
  68. package/lib/assets/label_icon_bottom.svg +0 -26
  69. package/lib/assets/upExport.svg +0 -23
  70. package/src/assets/32.svg +0 -28
  71. package/src/assets/addIcon.svg +0 -18
  72. package/src/assets/allfunc.svg +0 -28
  73. package/src/assets/arrowRight.svg +0 -25
  74. package/src/assets/arrow_top.png +0 -0
  75. package/src/assets/btn-delete.svg +0 -30
  76. package/src/assets/btn-edit.svg +0 -20
  77. package/src/assets/btn-more.svg +0 -18
  78. package/src/assets/btn-submit.svg +0 -20
  79. package/src/assets/caidan.svg +0 -12
  80. package/src/assets/close.svg +0 -26
  81. package/src/assets/closeicon.png +0 -0
  82. package/src/assets/drag.svg +0 -17
  83. package/src/assets/exportFail.svg +0 -38
  84. package/src/assets/exportProcessing.svg +0 -29
  85. package/src/assets/exportSuccess.svg +0 -35
  86. package/src/assets/exportlogo.png +0 -0
  87. package/src/assets/fixed-left-active.svg +0 -12
  88. package/src/assets/fixed-left.svg +0 -16
  89. package/src/assets/fixed-right-active.svg +0 -12
  90. package/src/assets/fixed-right.svg +0 -16
  91. package/src/assets/guanbi.svg +0 -16
  92. package/src/assets/icon-quanping.svg +0 -16
  93. package/src/assets/icon-shezhi.svg +0 -18
  94. package/src/assets/label_icon_bottom.svg +0 -26
  95. package/src/assets/list-no-img.svg +0 -22
  96. package/src/assets/morentouxiang-32.svg +0 -24
  97. package/src/assets/right.png +0 -0
  98. package/src/assets/scanning.svg +0 -25
  99. package/src/assets/upExport.svg +0 -23
  100. package/src/assets/xinglan-icon-out.png +0 -0
  101. package/src/components/Business/AddSelectBusiness/index.md +0 -41
  102. package/src/components/Business/AddSelectBusiness/index.tsx +0 -290
  103. package/src/components/Business/BsLayouts/Components/AllFunc/drawContent.tsx +0 -112
  104. package/src/components/Business/BsLayouts/Components/AllFunc/index.less +0 -153
  105. package/src/components/Business/BsLayouts/Components/AllFunc/index.tsx +0 -70
  106. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/index.less +0 -90
  107. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/index.tsx +0 -38
  108. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/leftTree.tsx +0 -243
  109. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/rightTree.tsx +0 -385
  110. package/src/components/Business/BsLayouts/Components/CustomerMenu/globalMenu/DrawContent.tsx +0 -286
  111. package/src/components/Business/BsLayouts/Components/CustomerMenu/globalMenu/customMenuHeader.tsx +0 -75
  112. package/src/components/Business/BsLayouts/Components/CustomerMenu/globalMenu/drawContent.less +0 -171
  113. package/src/components/Business/BsLayouts/Components/CustomerMenu/index.less +0 -65
  114. package/src/components/Business/BsLayouts/Components/CustomerMenu/index.tsx +0 -154
  115. package/src/components/Business/BsLayouts/Components/GlobalHeader/index.less +0 -73
  116. package/src/components/Business/BsLayouts/Components/GlobalHeader/index.tsx +0 -158
  117. package/src/components/Business/BsLayouts/Components/RightContent/LoginModal.tsx +0 -85
  118. package/src/components/Business/BsLayouts/Components/RightContent/home.less +0 -218
  119. package/src/components/Business/BsLayouts/Components/RightContent/index.tsx +0 -156
  120. package/src/components/Business/BsLayouts/Components/SearchFunc/index.less +0 -161
  121. package/src/components/Business/BsLayouts/Components/SearchFunc/index.tsx +0 -76
  122. package/src/components/Business/BsLayouts/index.less +0 -80
  123. package/src/components/Business/BsLayouts/index.tsx +0 -1465
  124. package/src/components/Business/BsLayouts/service.ts +0 -11
  125. package/src/components/Business/BsLayouts/utils.tsx +0 -211
  126. package/src/components/Business/BsSulaQueryTable/index.less +0 -220
  127. package/src/components/Business/BsSulaQueryTable/index.tsx +0 -505
  128. package/src/components/Business/BsSulaQueryTable/setting.tsx +0 -799
  129. package/src/components/Business/BsSulaQueryTable/utils.less +0 -65
  130. package/src/components/Business/BsSulaQueryTable/utils.tsx +0 -688
  131. package/src/components/Business/CommonAlert/index.less +0 -0
  132. package/src/components/Business/CommonAlert/index.tsx +0 -23
  133. package/src/components/Business/CommonGuideWrapper/index.less +0 -112
  134. package/src/components/Business/CommonGuideWrapper/index.md +0 -39
  135. package/src/components/Business/CommonGuideWrapper/index.tsx +0 -84
  136. package/src/components/Business/DetailPageWrapper/index.less +0 -80
  137. package/src/components/Business/DetailPageWrapper/index.tsx +0 -335
  138. package/src/components/Business/DetailPageWrapper/utils.tsx +0 -101
  139. package/src/components/Business/HomePageWrapper/index.less +0 -33
  140. package/src/components/Business/HomePageWrapper/index.md +0 -45
  141. package/src/components/Business/HomePageWrapper/index.tsx +0 -162
  142. package/src/components/Business/StateFlow/index.less +0 -131
  143. package/src/components/Business/StateFlow/index.md +0 -60
  144. package/src/components/Business/StateFlow/index.tsx +0 -30
  145. package/src/components/Business/TreeSearchSelect/index.md +0 -126
  146. package/src/components/Business/TreeSearchSelect/index.tsx +0 -34
  147. package/src/components/Business/TreeSearchSelect/utils.ts +0 -60
  148. package/src/components/Business/columnSettingTable/columnSetting.tsx +0 -764
  149. package/src/components/Business/columnSettingTable/index.less +0 -247
  150. package/src/components/Business/columnSettingTable/index.md +0 -358
  151. package/src/components/Business/columnSettingTable/index.tsx +0 -233
  152. package/src/components/Business/columnSettingTable/sulaSettingTable.tsx +0 -241
  153. package/src/components/Business/columnSettingTable/utils.tsx +0 -69
  154. package/src/components/Functional/AddSelect/index.less +0 -367
  155. package/src/components/Functional/AddSelect/index.md +0 -122
  156. package/src/components/Functional/AddSelect/index.tsx +0 -962
  157. package/src/components/Functional/BillEntry/index.less +0 -371
  158. package/src/components/Functional/BillEntry/index.md +0 -39
  159. package/src/components/Functional/BillEntry/index.tsx +0 -613
  160. package/src/components/Functional/ExportFunctions/ExportIcon/index.md +0 -37
  161. package/src/components/Functional/ExportFunctions/ExportIcon/index.tsx +0 -59
  162. package/src/components/Functional/TreeSearchSelect/index.md +0 -47
  163. package/src/components/Functional/TreeSearchSelect/index.tsx +0 -149
  164. package/src/styles/bsDefault.less +0 -1907
  165. package/src/utils/enumConfig.ts +0 -10
  166. package/src/utils/requestUtils.ts +0 -33
  167. package/src/utils/utils.ts +0 -52
@@ -1,505 +0,0 @@
1
- // @ts-nocheck
2
- import React, { useState, useEffect, useRef, useMemo } from 'react';
3
- import { useLocation } from 'umi';
4
- import { QueryTable } from 'bssula';
5
- import {
6
- handleTextDouble,
7
- handleTextLineFeed,
8
- handleTextOverflow,
9
- handleTooltip,
10
- handleTooltipHours,
11
- tableColumnsImage,
12
- userColumns,
13
- getItemDefaultWidth,
14
- authFn,
15
- queryParams,
16
- } from './utils';
17
- import { Menu, Tooltip,} from 'antd';
18
- import SortableTable from './setting';
19
- import { Resizable } from 'react-resizable';
20
- import quanping from '../../../assets/icon-quanping.svg';
21
- import scanning from '../../../assets/scanning.svg';
22
- import { debounce } from 'lodash';
23
- import ExportIcon from '@/components/Functional/ExportFunctions/ExportIcon';
24
- import ENUM from '@/utils/enumConfig';
25
-
26
- const MemoQueryTable = React.memo(QueryTable);
27
-
28
- const ResizeableTitle = (props) => {
29
- const { onResize, width, ...restProps } = props;
30
-
31
- if (!width) {
32
- return <th {...restProps} />;
33
- }
34
- return (
35
- <Resizable
36
- width={width}
37
- height={0}
38
- onResize={onResize}
39
- draggableOpts={{ enableUserSelectHack: false }}
40
- >
41
- <th {...restProps} />
42
- </Resizable>
43
- );
44
- };
45
-
46
- export default (props: any) => {
47
- const refs = useRef(null);
48
- const [pagePath, setPagePath] = useState('');
49
- // 获取 table columns中所有的 key 防止有的地方是 dataindex
50
- const [checkedList, setCheckedList] = useState(
51
- props.columns.map((d: any) => Array.isArray(d.key || d.dataIndex) ? JSON.stringify(d.key || d.dataIndex) : (d.key || d.dataIndex)),
52
- );
53
- const { pathname } = useLocation();
54
- const [id]: any = useState(
55
- Number(Math.random().toString().substr(2, 0) + Date.now()).toString(36),
56
- );
57
- const [isFullScreen, setIsFnllScreen]: any = useState(false);
58
- // @ts-nocheck
59
- const [value, setValue]: any = useState(props);
60
- const [showColumn, setShowColumns] = useState([]);
61
-
62
- const { isPage = true, pagination } = props;
63
-
64
- const [height, setHeight]: any = useState('100vh');
65
- const sortTableRef = useRef(null);
66
-
67
- // 获取table高度
68
- const getTableHeight = () => {
69
- const cancelHeight = window.top == window ? 303 : 223;
70
- const isFullScreen: any =
71
- document.fullScreen ||
72
- document.webkitIsFullScreen ||
73
- document.mozFullScreen;
74
- const h =
75
- document.body.clientHeight -
76
- (document.querySelector('.table-bssula-summary')?.clientHeight || 0) -
77
- (document.querySelector('.ant-form ant-form-horizontal')?.clientHeight ||
78
- 0) -
79
- (isFullScreen
80
- ? 0
81
- : document.querySelector('.ant-pro-page-container-warp')
82
- ?.clientHeight || 0) -
83
- cancelHeight +
84
- 'px';
85
- setHeight(h);
86
- setValue({ ...value });
87
- };
88
-
89
- //监测是否按下esc键
90
- function checkFull() {
91
- let globalDocument = window?.parent?.document || document;
92
- var isFull =
93
- globalDocument.fullscreenElement ||
94
- globalDocument.mozFullScreenElement ||
95
- globalDocument.webkitFullscreenElement;
96
- if (isFull == undefined) isFull = false;
97
- return isFull;
98
- }
99
-
100
- const getConfigFromlocalstorage = () => {
101
- let config = localStorage.getItem(ENUM.BROWSER_CACHE.COLUMN_CONDITION) || '[]';
102
- let configArray = JSON.parse(config);
103
- let configSetting = configArray.filter(
104
- (item) => item.code === window.location.hash,
105
- );
106
-
107
- if (configSetting.length && configSetting[0].detail) {
108
- return JSON.parse(configSetting[0].detail);
109
- }
110
- return [];
111
- };
112
-
113
- const setInitialTableInfo = () => {
114
- const resourceCodeArray = {};
115
- if (props.actionsRender && props.actionsRender.length) {
116
- props.actionsRender.forEach((item: any) => {
117
- if (item.code) {
118
- if (resourceCodeArray[item.code]) {
119
- resourceCodeArray[item.code + 1] = item;
120
- } else {
121
- resourceCodeArray[item.code] = item;
122
- }
123
- }
124
- });
125
- }
126
- if (props.columns && props.columns.length) {
127
- props.columns.forEach((d: any) => {
128
- if (d.isPermissionColumn && d.render && d.render.length) {
129
- d.render.forEach((inneritem: any) => {
130
- if (inneritem.code) {
131
- if (resourceCodeArray[inneritem.code]) {
132
- resourceCodeArray[inneritem.code + 1] = inneritem;
133
- } else {
134
- resourceCodeArray[inneritem.code] = inneritem;
135
- }
136
- }
137
- });
138
- }
139
- if (d.timeRenderHour) {
140
- d.render = ({ text }: any) =>
141
- handleTooltipHours(text, d.timeRenderHour);
142
- }
143
- // 处理不显示 时分秒的时间
144
- if (d.timeRender) {
145
- d.render = ({ text }: any) => handleTooltip(text, d.timeRender);
146
- }
147
- // 处理文字太长
148
- if (d.textOverflow) {
149
- d.render = ({ text }: any) => handleTextOverflow(text);
150
- }
151
- if (d.images) {
152
- d.render = ({ text }: any) => tableColumnsImage(text);
153
- }
154
- if (d.double) {
155
- d.render = ({ record }: any) =>
156
- handleTextDouble(record[d.textOne], record[d.textTwo]);
157
- }
158
- if (d.lineFeed) {
159
- d.render = ({ text }: any) => handleTextLineFeed(text);
160
- }
161
-
162
- // 处理序号
163
- if (d.indexNumber) {
164
- d.render = ({ index }: any) => index + 1;
165
- }
166
- // 没有值默认显示 - -
167
- if (!d.render) {
168
- d.render = ({ text }: any) => text || '- -';
169
- }
170
- });
171
- setCommonRenderFn(props.columns);
172
- const authButton = localStorage.getItem(ENUM.BROWSER_CACHE.MAIN_AUTH_CODES)
173
- ? JSON.parse(localStorage.getItem(ENUM.BROWSER_CACHE.MAIN_AUTH_CODES) as string)
174
- : [];
175
- Object.keys(resourceCodeArray).forEach((item: any) => {
176
- let Item = item;
177
- if (Number(item.slice(-1)) >= 1) {
178
- Item = item.substr(0, item.length - 1);
179
- }
180
- if (!authButton.filter((itemInner: any) => Item === itemInner).length) {
181
- resourceCodeArray[item].visible = false;
182
- }
183
- });
184
-
185
- }
186
- setValue({
187
- ...value,
188
- columns: [...props.columns],
189
- });
190
- const { columns } = props;
191
- let columnConfig = getConfigFromlocalstorage();
192
- let showColumns = columnConfig.length ? columnConfig.map((item) => {
193
- let inner = columns.filter(
194
- (inneritem) => {
195
- let innerKey = Array.isArray(inneritem.key || inneritem.dataIndex) ? JSON.stringify(inneritem.key || inneritem.dataIndex) : (inneritem.key || inneritem.dataIndex);
196
- let itemKey = Array.isArray(item.key || item.dataIndex) ? JSON.stringify(item.key || item.dataIndex) : (item.key || item.dataIndex);
197
- return innerKey && innerKey === itemKey;
198
- }
199
- )[0];
200
-
201
- return {
202
- ...inner,
203
- ...item,
204
- };
205
- }) : columns.filter(
206
- (column) => {
207
- let columnKey = Array.isArray(column.key || column.dataIndex) ? JSON.stringify(column.key || column.dataIndex) : (column.key || column.dataIndex);
208
- return column.notRegularCheckList || checkedList.indexOf(columnKey) > -1;
209
- }
210
- )
211
- showColumns.forEach((item, index) => {
212
- item.width = item.width || getItemDefaultWidth(item);
213
- item.onHeaderCell = (column) => ({
214
- ...item,
215
- width:
216
- typeof column.width === 'number'
217
- ? column.width
218
- : parseInt(column.width.replace('px', '')),
219
- onResize: handleResize(index),
220
- });
221
- });
222
- setShowColumns([...showColumns]);
223
- }
224
-
225
- //组件初始挂载
226
- useEffect(() => {
227
- getTableHeight();
228
- setInitialTableInfo();
229
- window.addEventListener('resize', (e) => {
230
- watchWinResize();
231
- });
232
-
233
- setPagePath(pathname); // 做处理,记录当前页面渲染的初始pathname,用于进行判断当前列表页面数据是否需要重新渲染
234
- }, []);
235
-
236
- useEffect(() => {
237
- if (props?.columns && value?.columns) {
238
- let newKeys = props.columns.map((d: any) => Array.isArray(d.key || d.dataIndex) ? JSON.stringify(d.key || d.dataIndex) : (d.key || d.dataIndex));
239
- let oldKeys = value.columns.map((d: any) => Array.isArray(d.key || d.dataIndex) ? JSON.stringify(d.key || d.dataIndex) : (d.key || d.dataIndex));
240
- JSON.stringify(newKeys) !== JSON.stringify(oldKeys) && setInitialTableInfo();
241
- }
242
- }, [props?.columns])
243
-
244
-
245
- const watchWinResize = debounce(() => {
246
- getTableHeight();
247
- if (!checkFull()) {
248
- // addTabsNavStyle(true);
249
- // 全屏下按键esc后要执行的动作
250
- // isFullScreen 为true 此时为全屏状态 false 为非全屏状态
251
- if (!isFullScreen) {
252
- // 按下esc键退出全屏
253
- setIsFnllScreen(false);
254
- } else {
255
- setIsFnllScreen(false);
256
- }
257
- }
258
- }, 10);
259
-
260
- const setCommonRenderFn = (columns: any[]) => {
261
- columns.forEach((column) => {
262
- if (column.showDetailUserInfo) {
263
- column.render = ({ text }: any) => userColumns({ name: text });
264
- }
265
- });
266
- };
267
-
268
- // 处理 table 基本参数
269
- const setTableProps = () => {
270
- let tableProps = value.tableProps || {};
271
- tableProps = {
272
- ...tableProps,
273
- size: value.size || 'middle',
274
- defaultPageSize: 20,
275
- pageSize: 20,
276
- initialPaging: {
277
- pagination: pagination
278
- ? false
279
- : {
280
- defaultPageSize: 20,
281
- pageSize: 20,
282
- showTotal: (total: any) => `共 ${total} 条`,
283
- showQuickJumper: true,
284
- hideOnSinglePage: value.hideOnSinglePage || false,
285
- },
286
- },
287
- initialSelectedRowKeys: value.initialSelectedRowKeys || [],
288
- expandable: value.expandable,
289
- scroll: { x: props.overScrollX || 'max-content', y: height },
290
- bordered: value.bordered || false,
291
- sticky: true,
292
- rowClassName: (record: object | null | undefined, index: number) =>
293
- index % 2 === 0 ? 'table_base' : 'table_odd',
294
- ...value.tableProps,
295
- components: {
296
- header: {
297
- cell: ResizeableTitle,
298
- },
299
- },
300
- };
301
-
302
- // @ts-ignore
303
- if (tableProps?.initialPaging?.pagination) {
304
- // @ts-ignore
305
- tableProps.initialPaging.pagination.showSizeChanger = true;
306
- }
307
- return tableProps;
308
- };
309
-
310
-
311
- const ShowFullScreen = () => {
312
- const { itemPath } = props;
313
- if (window.top != window) {
314
- window.parent.postMessage(
315
- {
316
- type: 'screenChange',
317
- id: itemPath,
318
- },
319
- '*',
320
- );
321
- setIsFnllScreen(!isFullScreen);
322
- } else {
323
- const isFullScreen: any =
324
- document.fullScreen ||
325
- document.webkitIsFullScreen ||
326
- document.mozFullScreen;
327
- let contentEle: any = document.querySelector(`body`);
328
- // addTabsNavStyle(isFullScreen);
329
- if (contentEle && !isFullScreen) {
330
- let fullScreenEle =
331
- contentEle.requestFullscreen ||
332
- contentEle.mozRequestFullScreen ||
333
- contentEle.webkitRequestFullScreen ||
334
- contentEle.msRequestFullscreen;
335
- if (fullScreenEle) {
336
- fullScreenEle.call(contentEle);
337
- setIsFnllScreen(true);
338
- // getTableHeight(true);
339
- return;
340
- }
341
- }
342
- if (document && isFullScreen) {
343
- let exitFullScreen =
344
- document.exitFullscreen ||
345
- document.mozCancelFullScreen ||
346
- document.webkitCancelFullScreen ||
347
- document.msExitFullscreen;
348
- if (exitFullScreen) {
349
- exitFullScreen.call(document);
350
- setIsFnllScreen(false);
351
- // getTableHeight();
352
- return;
353
- }
354
- }
355
- }
356
- };
357
-
358
- const handleTimeValue = () => {
359
- let actionsRender = value.actionsRender || [];
360
- actionsRender = [
361
- ...actionsRender,
362
- {
363
- type: 'text',
364
- props: {
365
- children: (
366
- <>
367
- <Tooltip title="列设置">
368
- <span className="ant-dropdown-link">
369
- <SortableTable
370
- ref={sortTableRef}
371
- setShowColumns={setShowColumns}
372
- showColumn={showColumn}
373
- datasource={value?.columns || []}
374
- />
375
- </span>
376
- </Tooltip>
377
- </>
378
- ),
379
- },
380
- },
381
- {
382
- type: 'text',
383
- props: {
384
- children: (
385
- <a>
386
- {isFullScreen ? (
387
- <Tooltip title="取消全屏">
388
- <img
389
- onClick={() => {
390
- ShowFullScreen();
391
- }}
392
- width={32}
393
- src={scanning}
394
- />
395
- </Tooltip>
396
- ) : (
397
- <Tooltip title="全屏">
398
- <img
399
- onClick={() => {
400
- ShowFullScreen();
401
- }}
402
- width={32}
403
- src={quanping}
404
- />
405
- </Tooltip>
406
- )}
407
- </a>
408
- ),
409
- },
410
- },
411
- {
412
- type: 'text',
413
- props: {
414
- children:
415
- value?.exportConfig && authFn(value?.exportConfig?.code) ? (
416
- <ExportIcon
417
- request={{
418
- url: `/oms-ops/excel/exportAsync/${value?.exportConfig?.type}`,
419
- params: value?.exportConfig?.params || queryParams,
420
- }}
421
- tableRef={props.forwardedRef || refs}
422
- />
423
- ) : (
424
- <span />
425
- ),
426
- },
427
- },
428
- ];
429
- if (value.rowSelection) {
430
- value.rowSelection.columnWidth = 50;
431
- }
432
- return {
433
- ...value,
434
- actionsRender,
435
- };
436
- };
437
-
438
- const handleResize =
439
- (index) =>
440
- (e, { size }) => {
441
- setShowColumns((columns: any) => {
442
- let newColumns = [...columns];
443
- newColumns[index] = {
444
- ...newColumns[index],
445
- width: size.width,
446
- };
447
- return [...newColumns];
448
- });
449
- };
450
-
451
- const setVisibleColumn = (columnTitle: string) => {
452
- sortTableRef?.current?.handleTableHeadHidden?.(columnTitle);
453
- };
454
-
455
- const config = {
456
- visibleFieldsCount: 3,
457
- tableWrapperStyle: {
458
- padding: '10px',
459
- background: '#f3f3f3',
460
- },
461
- setVisibleColumn: setVisibleColumn,
462
- itemLayout: {
463
- span: 8, // 栅格占位格数
464
- labelCol: {
465
- // label标签布局;可设置 span、offset
466
- span: 8,
467
- },
468
- wrapperCol: {
469
- // value布局, 方式同labelCol(horizontal状态下配置)
470
- span: 16,
471
- },
472
- },
473
- rowSelection: false, // 默认无多选
474
- ...handleTimeValue(),
475
- tableProps: setTableProps(),
476
- columns: [...showColumn],
477
- ref: props.forwardedRef || refs,
478
- isFullScreen,
479
- };
480
-
481
- useEffect(() => {
482
- if (!localStorage.getItem('isTabChange')) {
483
- if (pagePath === pathname) {
484
- // @ts-ignore
485
- config.ref?.current?.tableRef?.current?.refreshTable();
486
- }
487
- } else {
488
- setTimeout(() => {
489
- // 处理页面刷新两面
490
- localStorage.removeItem('isTabChange');
491
- }, 0);
492
- }
493
- }, [pathname]);
494
-
495
- const memoConfig = useMemo(
496
- () => ({
497
- ...config,
498
- summary: props.summary,
499
- statusMapping: props.statusMapping,
500
- }),
501
- [value, checkedList, showColumn, props.statusMapping],
502
- );
503
-
504
- return <MemoQueryTable {...memoConfig} />;
505
- };