inboxlookup_screen 1.0.8 → 1.0.10
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.
package/package.json
CHANGED
|
@@ -13,22 +13,15 @@ import CustomStore from 'devextreme/data/custom_store';
|
|
|
13
13
|
import Popup from 'devextreme-react/popup';
|
|
14
14
|
import 'devextreme/dist/css/dx.light.css';
|
|
15
15
|
|
|
16
|
-
|
|
17
16
|
const STORAGE_KEY = "ORDERS_MASTER_DETAIL_SEARCH_HISTORY";
|
|
18
|
-
const DEFAULT_SERVICE = {
|
|
19
|
-
CustomerId: 10,
|
|
20
|
-
projectId: 147,
|
|
21
|
-
id: 4, // any unique id for the list
|
|
22
|
-
status: "Active" // optional for left list rendering
|
|
23
|
-
};
|
|
24
17
|
|
|
25
|
-
const token = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiIwMDAwMDAwMy0wMDAwLTAwMDAtYzAwMC0wMDAwMDAwMDAwMDAiLCJpc3MiOiJodHRwczovL3N0cy53aW5kb3dzLm5ldC9lNjZmMWU2Yi05Y2I5LTQyNTgtYTQyOS0xNzhjZWUzNTlhYTkvIiwiaWF0IjoxNzQ3NjI2MDM0LCJuYmYiOjE3NDc2MjYwMzQsImV4cCI6MTc0NzYyOTk1MCwiYWNjdCI6MCwiYWNyIjoiMSIsImFjcnMiOlsicDEiXSwiYWlvIjoiQVpRQWEvOFpBQUFBbGJ3R3dWeVZteXA3THJKZ0ZiRUFzTFhGQ3ZDRE9mOVBHRFZmVkhDTVIyTU9PVkUyaXNOdmtPVG9JWmdZSXg2Yi9tQkYyYnVTUmwrVW5jZVFkZ3E1RVlFSDNGWmFRYkxOMGFZK05YV2l2d2pLakdzcEJkQVREQTE3WDduQ0pmS0k5RUVtNVczTnFLNXY2QUdlZnpZRzBXMkp5d1pueVhwbVBSaEpZREpGbFdzaE9OWk1XSVNQaVdjN05Fb3gvc1IrIiwiYW1yIjpbInB3ZCIsIm1mYSJdLCJhcHBfZGlzcGxheW5hbWUiOiJmbG93LVNTTy1pbnRlZ3JhdGlvbiIsImFwcGlkIjoiOTAwN2UyYzQtM2VlOS00MWQ4LWJlNzEtM2FiZGQ0ZTc5MzIxIiwiYXBwaWRhY3IiOiIxIiwiZmFtaWx5X25hbWUiOiJNIiwiZ2l2ZW5fbmFtZSI6IkdhbnRoaW1hdGhpIiwiaWR0eXAiOiJ1c2VyIiwiaXBhZGRyIjoiMTU3LjUxLjEyNS43NSIsIm5hbWUiOiJHYW50aGltYXRoaSBNIiwib2lkIjoiNmJkNDZkNGEtNGM0ZS00Y2RlLWI5MDItNTJlN2FkYzE5NGRmIiwib25wcmVtX3NpZCI6IlMtMS01LTIxLTE3NzEzODE2ODEtMjQ0NzgzODAwMi0zNTE0ODIwOTgxLTE3MjA3OCIsInBsYXRmIjoiNSIsInB1aWQiOiIxMDAzMjAwMjJDMDlEQzgyIiwicmgiOiIxLkFWTUFheDV2NXJtY1dFS2tLUmVNN2pXYXFRTUFBQUFBQUFBQXdBQUFBQUFBQUFCVEFIeFRBQS4iLCJzY3AiOiJEaXJlY3RvcnkuUmVhZC5BbGwgVXNlci5SZWFkIFVzZXIuUmVhZC5BbGwgcHJvZmlsZSBvcGVuaWQgZW1haWwiLCJzaWQiOiIwMDRmMzk1OS0wYjE5LWZhMjUtNGUyNS0zNDI0MWU0NjljZTkiLCJzdWIiOiItV1gtSXQ5NGFDaUozN1l6UEszemdXYWxTYS1MMmJ4MDhsempxUzEyb1JRIiwidGVuYW50X3JlZ2lvbl9zY29wZSI6IkFTIiwidGlkIjoiZTY2ZjFlNmItOWNiOS00MjU4LWE0MjktMTc4Y2VlMzU5YWE5IiwidW5pcXVlX25hbWUiOiJnYW50aGltYXRoaS5tQGFjY2Vzc2hlYWx0aGNhcmUuY29tIiwidXBuIjoiZ2FudGhpbWF0aGkubUBhY2Nlc3NoZWFsdGhjYXJlLmNvbSIsInV0aSI6IjlfZDJSOGJjRFVlZERaeFdJaHdvQUEiLCJ2ZXIiOiIxLjAiLCJ3aWRzIjpbImI3OWZiZjRkLTNlZjktNDY4OS04MTQzLTc2YjE5NGU4NTUwOSJdLCJ4bXNfZnRkIjoiSVFudjZvNlNiS1FUbEpIT05mV1FXQWFxWW9XUHRnMmFoM19lX1VpbjlHa0JhMjl5WldGemIzVjBhQzFrYzIxeiIsInhtc19pZHJlbCI6IjEgMjIiLCJ4bXNfc3QiOnsic3ViIjoiQ2hwWms3bVpSX2N3UGdVUnV4ZndTb0tVQkVMNlJCaWZxMkJ5c1RhSTFyZyJ9LCJ4bXNfdGNkdCI6MTQwMTQ2MzYyNSwiVXNlclR5cGUiOjEsIlVzZXJJZCI6Nzc3NzIsIkVtcElkIjoiTTA5NDgwNTciLCJFbWFpbElkIjoiZ2FudGhpbWF0aGkubUBhY2Nlc3NoZWFsdGhjYXJlLmNvbSIsIk5hbWUiOiJHYW50aGltYXRoaSBNIiwiQXBwS2V5IjoiMjllMWEyYTAtOGU0My00NDNhLTk4MDQtMTM3MGIwN2I3ZWRkIiwiU2Vzc2lvbklkIjoiMGM5NzU3ZjktYTA1OC00MWE1LWE5M2YtOWY5MTZhMWU2ZmQxIiwiSWFtVVJMIjoiaHR0cHM6Ly91YXRfaWFtYXBpLmFjY2Vzc2hlYWx0aGNhcmUuY29tL2FwaSJ9.YPFSayPCfTBDaB2vEHhwR3TnvvstT5G3z3yIWYny_Sc'; // Replace with your token
|
|
26
|
-
const getFieldMetaAPI = (sheetId) =>
|
|
27
|
-
`http://localhost:5017/api/excel-sheets/${sheetId}/columns`;
|
|
28
18
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
19
|
+
const OrdersMasterDetail = ({ dataSource, keyExpr, token, BaseUrl, ProjectId }) => {
|
|
20
|
+
const DEFAULT_SERVICE = {
|
|
21
|
+
projectId: ProjectId,
|
|
22
|
+
id: 4,
|
|
23
|
+
status: "Active" // optional for left list rendering
|
|
24
|
+
};
|
|
32
25
|
const [orders, setOrders] = useState([]);
|
|
33
26
|
const [selectedOrder, setSelectedOrder] = useState(null);
|
|
34
27
|
const [selectedService, setSelectedService] = useState(DEFAULT_SERVICE);
|
|
@@ -40,7 +33,6 @@ const OrdersMasterDetail = ({ dataSource, keyExpr, token, BaseUrl }) => {
|
|
|
40
33
|
const [category, setCategory] = useState(0);
|
|
41
34
|
const [status, setStatus] = useState(0);
|
|
42
35
|
const [filteredOrders, setFilteredOrders] = useState([]);
|
|
43
|
-
const [gridData, setGridData] = useState([]);
|
|
44
36
|
const searchTimeoutRef = useRef(null);
|
|
45
37
|
const [gridStore, setGridStore] = useState(null);
|
|
46
38
|
|
|
@@ -55,15 +47,9 @@ const OrdersMasterDetail = ({ dataSource, keyExpr, token, BaseUrl }) => {
|
|
|
55
47
|
const [readOnlyFilters, setReadOnlyFilters] = useState(false);
|
|
56
48
|
const [gridInstance, setGridInstance] = useState(null);
|
|
57
49
|
const [autoExpandAll, setAutoExpandAll] = useState(true);
|
|
58
|
-
const [
|
|
59
|
-
const
|
|
60
|
-
|
|
61
|
-
const [popupSummary, setPopupSummary] = useState({
|
|
62
|
-
type: '',
|
|
63
|
-
count: 0,
|
|
64
|
-
ids: [],
|
|
65
|
-
filters: []
|
|
66
|
-
});
|
|
50
|
+
const [proceedEnabled, setProceedEnabled] = useState(false);
|
|
51
|
+
const getFieldMetaAPI = (sheetId) =>
|
|
52
|
+
`${BaseUrl}api/LookupSheetMaster/GetColumns/${sheetId}`;
|
|
67
53
|
|
|
68
54
|
// ✅ Toast state
|
|
69
55
|
const [toastConfig, setToastConfig] = useState({
|
|
@@ -79,21 +65,24 @@ const OrdersMasterDetail = ({ dataSource, keyExpr, token, BaseUrl }) => {
|
|
|
79
65
|
|
|
80
66
|
|
|
81
67
|
useEffect(() => {
|
|
82
|
-
if (!
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
68
|
+
if (!ProjectId) return;
|
|
69
|
+
|
|
70
|
+
axios.get(`${BaseUrl}api/LookupSheetMaster/GetLatestSheetsByProject/${ProjectId}`, {
|
|
71
|
+
headers: {
|
|
72
|
+
Authorization: `Bearer ${token}`,
|
|
73
|
+
"Content-Type": "application/json",
|
|
74
|
+
},
|
|
75
|
+
})
|
|
87
76
|
.then(response => {
|
|
88
77
|
const data = response.data.map(item => ({
|
|
89
78
|
id: item.Id,
|
|
90
79
|
sheetName: item.SheetName,
|
|
91
80
|
fileId: item.FileId,
|
|
92
81
|
ProjectId: item.ProjectId,
|
|
93
|
-
status: "Active"
|
|
82
|
+
status: "Active"
|
|
94
83
|
}));
|
|
95
84
|
setOrders(data);
|
|
96
|
-
setFilteredOrders(data);
|
|
85
|
+
setFilteredOrders(data);
|
|
97
86
|
// setSelectedOrder(data.length ? data[0] : null);
|
|
98
87
|
|
|
99
88
|
})
|
|
@@ -109,11 +98,15 @@ const OrdersMasterDetail = ({ dataSource, keyExpr, token, BaseUrl }) => {
|
|
|
109
98
|
const openLastViewedSheet = async () => {
|
|
110
99
|
try {
|
|
111
100
|
const res = await axios.get(
|
|
112
|
-
|
|
101
|
+
`${BaseUrl}api/LookupSheetMaster/GetLastViewedSheet`,
|
|
113
102
|
{
|
|
114
103
|
params: {
|
|
115
104
|
userId: 1,
|
|
116
|
-
projectId:
|
|
105
|
+
projectId: ProjectId
|
|
106
|
+
},
|
|
107
|
+
headers: {
|
|
108
|
+
Authorization: `Bearer ${token}`,
|
|
109
|
+
"Content-Type": "application/json"
|
|
117
110
|
}
|
|
118
111
|
}
|
|
119
112
|
);
|
|
@@ -124,7 +117,6 @@ const OrdersMasterDetail = ({ dataSource, keyExpr, token, BaseUrl }) => {
|
|
|
124
117
|
const sheet = orders.find(o => o.id === lastViewedSheetId);
|
|
125
118
|
|
|
126
119
|
if (!sheet) return;
|
|
127
|
-
// ✅ EXACT SAME FLOW AS MANUAL CLICK
|
|
128
120
|
setSelectedOrder(sheet);
|
|
129
121
|
setSelectedService(sheet);
|
|
130
122
|
|
|
@@ -172,7 +164,7 @@ const OrdersMasterDetail = ({ dataSource, keyExpr, token, BaseUrl }) => {
|
|
|
172
164
|
.map(p => `${p}=${encodeURIComponent(JSON.stringify(loadOptions[p]))}`)
|
|
173
165
|
.join("&");
|
|
174
166
|
|
|
175
|
-
const requestUrl =
|
|
167
|
+
const requestUrl = `${BaseUrl}api/LookupSheetMaster/GetData/${sheetId}?${queryString}`;
|
|
176
168
|
|
|
177
169
|
const response = await fetch(requestUrl, {
|
|
178
170
|
method: "POST",
|
|
@@ -209,13 +201,6 @@ const OrdersMasterDetail = ({ dataSource, keyExpr, token, BaseUrl }) => {
|
|
|
209
201
|
[toastConfig, setToastConfig],
|
|
210
202
|
);
|
|
211
203
|
|
|
212
|
-
const onHiding = useCallback(() => {
|
|
213
|
-
setToastConfig({
|
|
214
|
-
...toastConfig,
|
|
215
|
-
isVisible: false,
|
|
216
|
-
});
|
|
217
|
-
}, [toastConfig, setToastConfig]);
|
|
218
|
-
|
|
219
204
|
const handleSearchChange = (value) => {
|
|
220
205
|
const safeValue = typeof value === "string" ? value : "";
|
|
221
206
|
|
|
@@ -248,8 +233,6 @@ const OrdersMasterDetail = ({ dataSource, keyExpr, token, BaseUrl }) => {
|
|
|
248
233
|
});
|
|
249
234
|
|
|
250
235
|
const data = await res.json();
|
|
251
|
-
|
|
252
|
-
// Always keep FlowTaskId first
|
|
253
236
|
const flowTaskColumn = {
|
|
254
237
|
dataField: "RowNumber",
|
|
255
238
|
caption: "Sheet Row",
|
|
@@ -325,9 +308,9 @@ const OrdersMasterDetail = ({ dataSource, keyExpr, token, BaseUrl }) => {
|
|
|
325
308
|
|
|
326
309
|
else if (selectAll && noneVisibleSelected) {
|
|
327
310
|
// ✅ "Deselect All"
|
|
328
|
-
e.component.clearSelection();
|
|
311
|
+
e.component.clearSelection();
|
|
329
312
|
setSelectAll(false);
|
|
330
|
-
setWasFullyDeselected(true);
|
|
313
|
+
setWasFullyDeselected(true);
|
|
331
314
|
setExcludedKeys([]);
|
|
332
315
|
setSelectedRowKeys([]);
|
|
333
316
|
setFinalCount(0);
|
|
@@ -390,58 +373,6 @@ const OrdersMasterDetail = ({ dataSource, keyExpr, token, BaseUrl }) => {
|
|
|
390
373
|
}, 0);
|
|
391
374
|
}, [selectAll, excludedKeys, selectedRowKeys, gridInstance]);
|
|
392
375
|
|
|
393
|
-
|
|
394
|
-
const getFinalSelectedIds = async (extraPayload = {}) => {
|
|
395
|
-
const appliedFilters = Array.isArray(lastAppliedFilter) ? lastAppliedFilter : [];
|
|
396
|
-
const totalRows = gridInstance?.totalCount() || 0;
|
|
397
|
-
|
|
398
|
-
// Determine selectType and ids
|
|
399
|
-
let selectType = '';
|
|
400
|
-
let selectedIds = [];
|
|
401
|
-
let deselectedIds = [];
|
|
402
|
-
let selectionLabel = '';
|
|
403
|
-
let selectedCount = 0;
|
|
404
|
-
|
|
405
|
-
if (selectAll && excludedKeys.length === 0) {
|
|
406
|
-
selectType = 'ALL';
|
|
407
|
-
selectionLabel = 'All Rows Selected';
|
|
408
|
-
selectedCount = totalRows;
|
|
409
|
-
} else if (selectAll && excludedKeys.length > 0) {
|
|
410
|
-
selectType = 'EXCLUDE';
|
|
411
|
-
deselectedIds = excludedKeys;
|
|
412
|
-
selectionLabel = 'Deselected Rows';
|
|
413
|
-
selectedCount = excludedKeys.length;
|
|
414
|
-
} else {
|
|
415
|
-
selectType = 'INCLUDE';
|
|
416
|
-
selectedIds = selectedRowKeys;
|
|
417
|
-
selectionLabel = 'Selected Rows';
|
|
418
|
-
selectedCount = selectedRowKeys.length;
|
|
419
|
-
}
|
|
420
|
-
|
|
421
|
-
const payload = {
|
|
422
|
-
selectType,
|
|
423
|
-
selectedIds,
|
|
424
|
-
deselectedIds,
|
|
425
|
-
totalSelectedCount: selectedCount,
|
|
426
|
-
filters: appliedFilters.length > 0 ? appliedFilters : [],
|
|
427
|
-
...extraPayload, // Inject workspaceId, userId, etc.
|
|
428
|
-
};
|
|
429
|
-
|
|
430
|
-
console.log("📦 Final Selection Payload:", payload);
|
|
431
|
-
|
|
432
|
-
setPopupSummary(payload);
|
|
433
|
-
setPopupVisible(true);
|
|
434
|
-
setActionValue(null);
|
|
435
|
-
|
|
436
|
-
// Reset selection state
|
|
437
|
-
setSelectAll(false);
|
|
438
|
-
setExcludedKeys([]);
|
|
439
|
-
setSelectedRowKeys([]);
|
|
440
|
-
setFinalCount(0);
|
|
441
|
-
getUnSelected();
|
|
442
|
-
|
|
443
|
-
return selectedIds;
|
|
444
|
-
};
|
|
445
376
|
const formatRawFilterToReadableText = (filter) => {
|
|
446
377
|
if (!filter) return '';
|
|
447
378
|
|
|
@@ -545,50 +476,6 @@ const OrdersMasterDetail = ({ dataSource, keyExpr, token, BaseUrl }) => {
|
|
|
545
476
|
}
|
|
546
477
|
};
|
|
547
478
|
|
|
548
|
-
const getUnSelected = () => {
|
|
549
|
-
const gridInstance = gridRef.current?.instance?.();
|
|
550
|
-
|
|
551
|
-
if (!gridInstance) return;
|
|
552
|
-
|
|
553
|
-
// ✅ Clear selection only (do not clear filters)
|
|
554
|
-
gridInstance.deselectAll();
|
|
555
|
-
|
|
556
|
-
// ✅ Reset your internal state
|
|
557
|
-
setSelectAll(false);
|
|
558
|
-
setExcludedKeys([]);
|
|
559
|
-
setSelectedRowKeys([]);
|
|
560
|
-
setShowCheckboxes(false);
|
|
561
|
-
setFinalCount(0);
|
|
562
|
-
setReadOnlyFilters(false);
|
|
563
|
-
};
|
|
564
|
-
|
|
565
|
-
const getClearSelected = () => {
|
|
566
|
-
const gridInstance = gridRef.current?.instance?.();
|
|
567
|
-
|
|
568
|
-
if (!gridInstance) return;
|
|
569
|
-
|
|
570
|
-
// ✅ Clear selection
|
|
571
|
-
gridInstance.deselectAll();
|
|
572
|
-
|
|
573
|
-
// ✅ Clear all filters (FilterRow + HeaderFilter)
|
|
574
|
-
const columns = gridInstance.getVisibleColumns();
|
|
575
|
-
columns.forEach((col) => {
|
|
576
|
-
gridInstance.columnOption(col.dataField, 'filterValue', null); // FilterRow
|
|
577
|
-
gridInstance.columnOption(col.dataField, 'filterValues', null); // HeaderFilter
|
|
578
|
-
});
|
|
579
|
-
|
|
580
|
-
gridInstance.clearFilter(); // apply filter clearing
|
|
581
|
-
|
|
582
|
-
// ✅ Reset your internal state
|
|
583
|
-
setSelectAll(false);
|
|
584
|
-
setExcludedKeys([]);
|
|
585
|
-
setSelectedRowKeys([]);
|
|
586
|
-
// setShowCheckboxes(false);
|
|
587
|
-
setFinalCount(0);
|
|
588
|
-
setReadOnlyFilters(false);
|
|
589
|
-
setActionValue(null);
|
|
590
|
-
|
|
591
|
-
};
|
|
592
479
|
|
|
593
480
|
useEffect(() => {
|
|
594
481
|
if (readOnlyFilters) {
|
|
@@ -611,33 +498,21 @@ const OrdersMasterDetail = ({ dataSource, keyExpr, token, BaseUrl }) => {
|
|
|
611
498
|
const saveLastViewedSheet = async (sheet) => {
|
|
612
499
|
try {
|
|
613
500
|
await axios.post(
|
|
614
|
-
|
|
501
|
+
`${BaseUrl}api/LookupSheetMaster/UpdateLastViewedSheet`,
|
|
615
502
|
{
|
|
616
503
|
userId: 1, // replace with logged-in user id later
|
|
617
|
-
projectId:
|
|
504
|
+
projectId: ProjectId,
|
|
618
505
|
sheetId: sheet.id
|
|
619
|
-
}
|
|
620
|
-
);
|
|
621
|
-
} catch (error) {
|
|
622
|
-
console.error("Failed to save last viewed sheet", error);
|
|
623
|
-
}
|
|
624
|
-
};
|
|
625
|
-
// ✅ GET LAST VIEWED SHEET
|
|
626
|
-
const getLastViewedSheet = async (projectId) => {
|
|
627
|
-
try {
|
|
628
|
-
const response = await axios.get(
|
|
629
|
-
"http://localhost:5017/api/excel-sheets/last-viewed",
|
|
506
|
+
},
|
|
630
507
|
{
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
508
|
+
headers: {
|
|
509
|
+
Authorization: `Bearer ${token}`,
|
|
510
|
+
"Content-Type": "application/json"
|
|
634
511
|
}
|
|
635
512
|
}
|
|
636
513
|
);
|
|
637
|
-
return response.data; // expected: { sheetId: number }
|
|
638
514
|
} catch (error) {
|
|
639
|
-
console.error("Failed to
|
|
640
|
-
return null;
|
|
515
|
+
console.error("Failed to save last viewed sheet", error);
|
|
641
516
|
}
|
|
642
517
|
};
|
|
643
518
|
|
|
@@ -714,17 +589,6 @@ const OrdersMasterDetail = ({ dataSource, keyExpr, token, BaseUrl }) => {
|
|
|
714
589
|
|
|
715
590
|
gridInstance.searchByText(searchText);
|
|
716
591
|
};
|
|
717
|
-
const clearSearch = () => {
|
|
718
|
-
if (!gridInstance) return;
|
|
719
|
-
setSearchText("");
|
|
720
|
-
gridInstance.searchByText("");
|
|
721
|
-
};
|
|
722
|
-
|
|
723
|
-
const gridDataWithId = gridData.map((row, index) => ({
|
|
724
|
-
...row,
|
|
725
|
-
rowId: index + 1
|
|
726
|
-
}));
|
|
727
|
-
|
|
728
592
|
|
|
729
593
|
useEffect(() => {
|
|
730
594
|
// If all filters are cleared → show all records
|
|
@@ -744,13 +608,9 @@ const OrdersMasterDetail = ({ dataSource, keyExpr, token, BaseUrl }) => {
|
|
|
744
608
|
if (!key) return "";
|
|
745
609
|
|
|
746
610
|
return key
|
|
747
|
-
// Handle snake_case first
|
|
748
611
|
.replace(/_/g, " ")
|
|
749
|
-
// Add space between lowerCase -> UpperCase
|
|
750
612
|
.replace(/([a-z])([A-Z])/g, "$1 $2")
|
|
751
|
-
// Add space before last capital in acronyms (ID, URL, etc.)
|
|
752
613
|
.replace(/([A-Z]+)([A-Z][a-z])/g, "$1 $2")
|
|
753
|
-
// Capitalize first letter of each word
|
|
754
614
|
.replace(/\b\w/g, (c) => c.toUpperCase());
|
|
755
615
|
};
|
|
756
616
|
|
|
@@ -922,39 +782,6 @@ const OrdersMasterDetail = ({ dataSource, keyExpr, token, BaseUrl }) => {
|
|
|
922
782
|
<GroupItem column="sheetId" summaryType="count" displayFormat="Count: {0}" />
|
|
923
783
|
</Summary>
|
|
924
784
|
|
|
925
|
-
{/* <Toolbar>
|
|
926
|
-
<Item name="groupPanel" location="before" />
|
|
927
|
-
|
|
928
|
-
<Item
|
|
929
|
-
location="after"
|
|
930
|
-
render={() => (
|
|
931
|
-
<Button
|
|
932
|
-
icon="arrowright"
|
|
933
|
-
text={`(${finalCount})`}
|
|
934
|
-
onClick={() => {
|
|
935
|
-
if (actionValue === "Assigned") {
|
|
936
|
-
setAssignPopupVisible(true);
|
|
937
|
-
} else {
|
|
938
|
-
getFinalSelectedIds();
|
|
939
|
-
setPopupVisible(true);
|
|
940
|
-
}
|
|
941
|
-
}}
|
|
942
|
-
disabled={!proceedEnabled}
|
|
943
|
-
/>
|
|
944
|
-
)}
|
|
945
|
-
/>
|
|
946
|
-
|
|
947
|
-
<Item
|
|
948
|
-
location="after"
|
|
949
|
-
render={() => (
|
|
950
|
-
<Button
|
|
951
|
-
icon="clearformat"
|
|
952
|
-
text="Clear"
|
|
953
|
-
onClick={getClearSelected}
|
|
954
|
-
/>
|
|
955
|
-
)}
|
|
956
|
-
/>
|
|
957
|
-
</Toolbar> */}
|
|
958
785
|
</DataGrid>
|
|
959
786
|
|
|
960
787
|
|