@bjsdistribution/dms-client-return 0.1.96-prod → 0.1.97-prod
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/dist/components/client-portal/OutstandingTable.js +21 -21
- package/dist/components/client-portal/OutstandingTable.js.map +1 -1
- package/dist/components/order-daily-overview/return-order-table/return-orders-filters/ReturnOrderTable.js +18 -18
- package/dist/components/order-daily-overview/return-order-table/return-orders-filters/ReturnOrderTable.js.map +1 -1
- package/package.json +2 -2
|
@@ -6,12 +6,12 @@ import { useAtom as P } from "jotai";
|
|
|
6
6
|
import { useRef as T, useState as L, useMemo as ne, useEffect as f } from "react";
|
|
7
7
|
import { NavLink as re } from "react-router-dom";
|
|
8
8
|
import { filtersReducerAtom as oe } from "../order-daily-overview/header-filters/filterStore.js";
|
|
9
|
-
import { useClientOutstandingReturnData as
|
|
9
|
+
import { useClientOutstandingReturnData as ce, useLocationData as ie, useClientPortal as ae, useSelectedClientPortOrders as le, useSearchText as de } from "../store.js";
|
|
10
10
|
import { usefetchAgain as se } from "../order-view/store.js";
|
|
11
11
|
import { useLoading as he, usePrintOptionTOggle as ue, UsePaginationData as pe } from "../order-daily-overview/store/store.js";
|
|
12
12
|
import fe from "../../common/SortIcon.js";
|
|
13
13
|
import A from "../../common/CaretDownFilledIcon.js";
|
|
14
|
-
import { StyledTableWrapper as me, StyledTable as ge, EmptyDataContainer as
|
|
14
|
+
import { StyledTableWrapper as me, StyledTable as ge, EmptyDataContainer as _e, CustomDrop as Ce } from "../order-daily-overview/return-order-table/return-orders-filters/returnstyles.js";
|
|
15
15
|
import ye from "../../assets/icons/PrinterIcon.js";
|
|
16
16
|
import De from "../../assets/icons/DownIcon.js";
|
|
17
17
|
import Se from "../order-view/details-filters/left-side-filters/dropdowns/PrintDropDownReturn.js";
|
|
@@ -21,13 +21,13 @@ const Ke = () => {
|
|
|
21
21
|
const [F] = P(oe), { "x-pagination": Oe } = F, [
|
|
22
22
|
s,
|
|
23
23
|
y
|
|
24
|
-
] =
|
|
24
|
+
] = ce(), [x, D] = he(), U = T(null), m = T(null), [S, N] = ue(), [g] = ie(), [, W] = pe(), [M] = se(), [j] = ae(), [G, _] = le(), [J, V] = L(!1), [I] = de(), [O] = P(Ne), { "x-filters": B } = O, [a, H] = L(null), h = (t) => {
|
|
25
25
|
H((n) => n?.key === t && n.direction === "asc" ? { key: t, direction: "desc" } : { key: t, direction: "asc" });
|
|
26
26
|
}, R = ne(() => {
|
|
27
27
|
if (!s || !a) return s;
|
|
28
28
|
const { key: t, direction: n } = a;
|
|
29
|
-
return [...s].sort((
|
|
30
|
-
const l =
|
|
29
|
+
return [...s].sort((i, C) => {
|
|
30
|
+
const l = i[t], d = C[t];
|
|
31
31
|
return typeof l == "number" && typeof d == "number" ? n === "asc" ? l - d : d - l : typeof l == "string" && typeof d == "string" ? n === "asc" ? l.localeCompare(d) : d.localeCompare(l) : 0;
|
|
32
32
|
});
|
|
33
33
|
}, [s, a]), u = (t) => !a || a.key !== t ? /* @__PURE__ */ e(fe, {}) : a.direction === "asc" ? /* @__PURE__ */ e(A, {}) : /* @__PURE__ */ e(A, { style: { transform: "rotate(180deg)" } }), K = (t) => {
|
|
@@ -42,7 +42,7 @@ const Ke = () => {
|
|
|
42
42
|
{ field: "isdeleted", op: "=", value: 0 },
|
|
43
43
|
{ field: "product_return_action_id", op: "=", value: "RTS" }
|
|
44
44
|
], ...$], {
|
|
45
|
-
data:
|
|
45
|
+
data: c,
|
|
46
46
|
loading: p,
|
|
47
47
|
paginationData: v,
|
|
48
48
|
fetchData: q
|
|
@@ -55,7 +55,7 @@ const Ke = () => {
|
|
|
55
55
|
f(() => {
|
|
56
56
|
j && I === "" && q();
|
|
57
57
|
}, [JSON.stringify(k), I]), f(() => {
|
|
58
|
-
if (D(p),
|
|
58
|
+
if (D(p), c && c?.data && (y(c?.data), v))
|
|
59
59
|
try {
|
|
60
60
|
const { count: t, ...n } = JSON.parse(v);
|
|
61
61
|
W(n);
|
|
@@ -65,23 +65,23 @@ const Ke = () => {
|
|
|
65
65
|
description: "Failed to parse pagination data"
|
|
66
66
|
});
|
|
67
67
|
}
|
|
68
|
-
}, [
|
|
69
|
-
if (D(p),
|
|
70
|
-
const t =
|
|
71
|
-
const
|
|
72
|
-
(
|
|
68
|
+
}, [c, p]), f(() => {
|
|
69
|
+
if (D(p), c && c?.data && g) {
|
|
70
|
+
const t = c.data.map((n) => {
|
|
71
|
+
const i = g.find(
|
|
72
|
+
(C) => C?.token === n?.return_location
|
|
73
73
|
);
|
|
74
74
|
return {
|
|
75
75
|
...n,
|
|
76
|
-
new_location:
|
|
76
|
+
new_location: i ? i?.location_name : null
|
|
77
77
|
};
|
|
78
78
|
});
|
|
79
79
|
y(t);
|
|
80
80
|
}
|
|
81
|
-
}, [
|
|
81
|
+
}, [c, p, g, O, M]);
|
|
82
82
|
const z = (t) => {
|
|
83
|
-
|
|
84
|
-
(n) => n.includes(t) ? n.filter((
|
|
83
|
+
_(
|
|
84
|
+
(n) => n.includes(t) ? n.filter((i) => i !== t) : [...n, t]
|
|
85
85
|
);
|
|
86
86
|
};
|
|
87
87
|
return /* @__PURE__ */ e(Q, { children: /* @__PURE__ */ e(me, { className: "fortables", children: /* @__PURE__ */ r(ge, { children: [
|
|
@@ -92,8 +92,8 @@ const Ke = () => {
|
|
|
92
92
|
checked: J,
|
|
93
93
|
onChange: (t) => {
|
|
94
94
|
const n = t.target.checked;
|
|
95
|
-
V(n),
|
|
96
|
-
n ? s?.map((
|
|
95
|
+
V(n), _(
|
|
96
|
+
n ? s?.map((i) => i?.order_id) || [] : []
|
|
97
97
|
);
|
|
98
98
|
}
|
|
99
99
|
}
|
|
@@ -128,7 +128,7 @@ const Ke = () => {
|
|
|
128
128
|
] }) }),
|
|
129
129
|
/* @__PURE__ */ e("th", { className: "emailInvoiceShare", children: "Labels" })
|
|
130
130
|
] }) }),
|
|
131
|
-
/* @__PURE__ */ e("tbody", { children: x ? /* @__PURE__ */ e("tr", { children: /* @__PURE__ */ e("td", { colSpan: 14, children: /* @__PURE__ */ e(Z, { active: !0 }) }) }) : R?.length === 0 ? /* @__PURE__ */ e("tr", { children: /* @__PURE__ */ e("td", { colSpan: 14, children: /* @__PURE__ */ e(
|
|
131
|
+
/* @__PURE__ */ e("tbody", { children: x ? /* @__PURE__ */ e("tr", { children: /* @__PURE__ */ e("td", { colSpan: 14, children: /* @__PURE__ */ e(Z, { active: !0 }) }) }) : R?.length === 0 ? /* @__PURE__ */ e("tr", { children: /* @__PURE__ */ e("td", { colSpan: 14, children: /* @__PURE__ */ e(_e, { children: /* @__PURE__ */ e(ee, {}) }) }) }) : R?.map((t, n) => /* @__PURE__ */ r("tr", { children: [
|
|
132
132
|
/* @__PURE__ */ e("td", { children: /* @__PURE__ */ e(
|
|
133
133
|
w,
|
|
134
134
|
{
|
|
@@ -168,7 +168,7 @@ const Ke = () => {
|
|
|
168
168
|
/* @__PURE__ */ e("td", { children: t?.collected_at ? te(new Date(t?.collected_at), "dd/MM/yyyy") : "UNKNOWN" }),
|
|
169
169
|
/* @__PURE__ */ e("td", { children: o(t?.collection_reason) }),
|
|
170
170
|
/* @__PURE__ */ e("td", { children: /* @__PURE__ */ e("ul", { className: "actionbox", children: /* @__PURE__ */ e(
|
|
171
|
-
|
|
171
|
+
Ce,
|
|
172
172
|
{
|
|
173
173
|
ref: U,
|
|
174
174
|
className: S === n ? "active" : "",
|
|
@@ -184,7 +184,7 @@ const Ke = () => {
|
|
|
184
184
|
Se,
|
|
185
185
|
{
|
|
186
186
|
legacyURL: t?.return_order_product_label,
|
|
187
|
-
legacyProductID: t?.
|
|
187
|
+
legacyProductID: t?.legacy_product_id
|
|
188
188
|
}
|
|
189
189
|
) })
|
|
190
190
|
]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OutstandingTable.js","sources":["../../../src/components/client-portal/OutstandingTable.tsx"],"sourcesContent":["import {\n Checkbox,\n displayValueOrNA,\n useAxios,\n} from '@bjsdistribution/dms-component-library';\nimport { Empty, notification, Skeleton } from 'antd';\nimport { format } from 'date-fns';\nimport { useAtom } from 'jotai';\nimport React, { useEffect, useMemo, useRef, useState } from 'react';\nimport { NavLink } from 'react-router-dom';\nimport { filtersReducerAtom } from '../order-daily-overview/header-filters/filterStore';\nimport {\n useClientOutstandingReturnData,\n useClientPortal,\n useLocationData,\n useSearchText,\n useSelectedClientPortOrders,\n} from '../store';\nimport { usefetchAgain } from '../order-view/store';\nimport {\n useLoading,\n UsePaginationData,\n usePrintOptionTOggle,\n} from '../order-daily-overview/store/store';\nimport SortIcon from '../../common/SortIcon';\nimport CaretDownFilledIcon from '../../common/CaretDownFilledIcon';\nimport { ApiResponse } from '../types';\nimport {\n CustomDrop,\n EmptyDataContainer,\n StyledTable,\n StyledTableWrapper,\n} from '../order-daily-overview/return-order-table/return-orders-filters/returnstyles';\nimport PrinterIcon from '../../assets/icons/PrinterIcon';\nimport DownIcon from '../../assets/icons/DownIcon';\nimport PrintDropDownReturn from '../order-view/details-filters/left-side-filters/dropdowns/PrintDropDownReturn';\nimport { dateFilterCPReducer } from './DateFilterStore';\nimport { WEIGHT_UNIT, VOLUME_UNIT } from '../../common/utils';\n\nconst OutstandingTable = () => {\n const [statePagination] = useAtom(filtersReducerAtom);\n const { 'x-pagination': pagination } = statePagination;\n const [\n outstandingReturnData,\n setOutstandingReturnData,\n ] = useClientOutstandingReturnData();\n const [load, setLoading] = useLoading();\n const dropdownRefParent = useRef<HTMLDivElement>(null);\n const dropdownRef = useRef<HTMLDivElement>(null);\n const [printToogle, setPrintToggle] = usePrintOptionTOggle();\n const [locationData] = useLocationData();\n const [, setPaginationObject] = UsePaginationData();\n const [callForFetch] = usefetchAgain();\n const [clientPortal] = useClientPortal();\n const [selectedOrderIds, setSelectedOrderIds] = useSelectedClientPortOrders();\n const [selectClientAll, setSelectClientAll] = useState(false);\n const [debouncedSearchText] = useSearchText();\n\n const [state] = useAtom(dateFilterCPReducer);\n const { 'x-filters': filters } = state;\n\n //sorting\n const [sortConfig, setSortConfig] = useState<{\n key: string;\n direction: 'asc' | 'desc';\n } | null>(null);\n\n const handleSort = (key: string) => {\n setSortConfig((prev: any) => {\n if (prev?.key === key && prev.direction === 'asc') {\n return { key, direction: 'desc' };\n }\n return { key, direction: 'asc' };\n });\n };\n\n const sortedData = useMemo(() => {\n if (!outstandingReturnData || !sortConfig) return outstandingReturnData;\n\n const { key, direction } = sortConfig;\n return [...outstandingReturnData].sort((a, b) => {\n const valueA = a[key];\n const valueB = b[key];\n\n if (typeof valueA === 'number' && typeof valueB === 'number') {\n return direction === 'asc' ? valueA - valueB : valueB - valueA;\n }\n if (typeof valueA === 'string' && typeof valueB === 'string') {\n return direction === 'asc'\n ? valueA.localeCompare(valueB)\n : valueB.localeCompare(valueA);\n }\n return 0;\n });\n }, [outstandingReturnData, sortConfig]);\n\n const renderSortIcon = (columnKey: string) => {\n if (!sortConfig || sortConfig.key !== columnKey) {\n return <SortIcon />;\n }\n return sortConfig.direction === 'asc' ? (\n <CaretDownFilledIcon />\n ) : (\n <CaretDownFilledIcon style={{ transform: 'rotate(180deg)' }} />\n );\n };\n\n const OpenDropDown = (index: number) => {\n setPrintToggle(prevIndex => (prevIndex === index ? null : index));\n };\n // Close dropdown outside click\n useEffect(() => {\n document.addEventListener('mousedown', handleClickOutside);\n return () => {\n document.removeEventListener('mousedown', handleClickOutside);\n };\n }, []);\n const handleClickOutside = (event: MouseEvent) => {\n if (\n dropdownRef.current &&\n !dropdownRef.current.contains(event.target as Node)\n ) {\n setPrintToggle(null);\n }\n };\n\n const cleanedFilters = filters.filter(f => f.field !== 'order_status');\n const baseFilters = [\n { field: 'isdeleted', op: '=', value: 0 },\n { field: 'product_return_action_id', op: '=', value: 'RTS' },\n ];\n\n const modifiedFilters = [...baseFilters, ...cleanedFilters];\n const {\n data: fetchedOrderData,\n loading: returnDataLoad,\n paginationData,\n fetchData,\n } = useAxios<ApiResponse>({\n endpoint: '/v1/return/product/pending/',\n method: 'GET',\n filters: modifiedFilters,\n pagination: { is_pagination: false },\n });\n\n useEffect(() => {\n if (clientPortal && debouncedSearchText === '') {\n fetchData();\n }\n }, [JSON.stringify(modifiedFilters), debouncedSearchText]);\n\n useEffect(() => {\n setLoading(returnDataLoad);\n if (fetchedOrderData && fetchedOrderData?.data) {\n setOutstandingReturnData(fetchedOrderData?.data);\n if (paginationData) {\n try {\n const { count, ...rest } = JSON.parse(paginationData);\n setPaginationObject(rest);\n } catch (error) {\n console.error('Error parsing paginationData:', error);\n notification.error({\n message: 'Error',\n description: 'Failed to parse pagination data',\n });\n }\n }\n }\n }, [fetchedOrderData, returnDataLoad]);\n\n useEffect(() => {\n setLoading(returnDataLoad);\n if (fetchedOrderData && fetchedOrderData?.data && locationData) {\n const updatedReturnData = fetchedOrderData.data.map(returnItem => {\n const matchingLocation = locationData.find(\n (location: any) => location?.token === returnItem?.return_location\n );\n return {\n ...returnItem,\n new_location: matchingLocation\n ? matchingLocation?.location_name\n : null,\n };\n });\n\n setOutstandingReturnData(updatedReturnData);\n }\n }, [fetchedOrderData, returnDataLoad, locationData, state, callForFetch]);\n\n //Client Portal\n const handleSelectOrderId = (id: string | number) => {\n setSelectedOrderIds(prev =>\n prev.includes(id) ? prev.filter(orderId => orderId !== id) : [...prev, id]\n );\n };\n\n const handleClientSelectAll = (e: React.ChangeEvent<HTMLInputElement>) => {\n const isChecked = e.target.checked;\n setSelectClientAll(isChecked);\n\n if (isChecked) {\n setSelectedOrderIds(\n outstandingReturnData?.map((item: any) => item?.order_id) || []\n );\n } else {\n setSelectedOrderIds([]);\n }\n };\n return (\n <>\n <StyledTableWrapper className=\"fortables\">\n <StyledTable>\n <thead>\n <tr>\n {/* <th className=\"emailInvoiceCheckbox\">\n <Checkbox checked={selectAll} onChange={handleSelectAll} />\n </th> */}\n <th className=\"emailInvoiceCheckbox\">\n <Checkbox\n checked={selectClientAll}\n onChange={handleClientSelectAll}\n />\n </th>\n <th onClick={() => handleSort('return_location_name')}>\n <div className=\"sortIconClass\">\n Return Location {renderSortIcon('return_location_name')}\n </div>\n </th>\n <th onClick={() => handleSort('recipient_name')}>\n <div className=\"sortIconClass\">\n Recipient {renderSortIcon('recipient_name')}\n </div>\n </th>\n <th>Return Action</th>\n <th>Code</th>\n <th>Description</th>\n <th>Part</th>\n <th onClick={() => handleSort('weight')}>\n <div className=\"sortIconClass\">\n Weight ({WEIGHT_UNIT}) {renderSortIcon('weight')}\n </div>\n </th>\n <th>{VOLUME_UNIT}</th>\n <th onClick={() => handleSort('return_reason')}>\n <div className=\"sortIconClass\">\n Return Reason {renderSortIcon('return_reason')}\n </div>\n </th>\n <th>Collected</th>\n <th onClick={() => handleSort('collection_reason')}>\n <div className=\"sortIconClass\">\n Collection Reason {renderSortIcon('collection_reason')}\n </div>\n </th>\n <th className=\"emailInvoiceShare\">Labels</th>\n </tr>\n </thead>\n <tbody>\n {load ? (\n <tr>\n <td colSpan={14}>\n <Skeleton active />\n </td>\n </tr>\n ) : sortedData?.length === 0 ? (\n <tr>\n <td colSpan={14}>\n <EmptyDataContainer>\n <Empty />\n </EmptyDataContainer>\n </td>\n </tr>\n ) : (\n sortedData?.map((item: any, index: any) => (\n <tr key={item.id}>\n <td>\n <Checkbox\n checked={selectedOrderIds.includes(item?.order_id)}\n onChange={() => handleSelectOrderId(item?.order_id)}\n />\n </td>\n <td> {displayValueOrNA(item?.return_location_name)}</td>\n <td>\n <ul style={{ listStyleType: 'none', padding: 0 }}>\n <li\n style={{\n color: '#0099ff',\n fontWeight: 600,\n paddingLeft: 0,\n }}\n >\n <NavLink to={`/orders/view/${item?.order_id}`}>\n {displayValueOrNA(item?.recipient_name)}\n </NavLink>\n </li>\n <li style={{ color: '#888075' }}>\n {displayValueOrNA(item?.postcode)}\n </li>\n </ul>\n </td>\n <td>{displayValueOrNA(item?.product_return_action)}</td>\n <td>{displayValueOrNA(item?.code)}</td>\n <td>{displayValueOrNA(item?.description)}</td>\n <td>{displayValueOrNA(item?.part)}</td>\n <td>\n {displayValueOrNA(item?.weight)}{' '}\n {item?.weight && item?.weight !== null ? WEIGHT_UNIT : ''}\n </td>\n <td>{displayValueOrNA(item?.cube)}</td>\n <td>{displayValueOrNA(item?.return_reason)}</td>\n <td>\n {item?.collected_at\n ? format(new Date(item?.collected_at), 'dd/MM/yyyy')\n : 'UNKNOWN'}\n </td>\n\n <td>{displayValueOrNA(item?.collection_reason)}</td>\n <td>\n <ul className=\"actionbox\">\n <CustomDrop\n ref={dropdownRefParent}\n className={printToogle === index ? 'active' : ''}\n >\n <li\n className=\"shareIconContainer\"\n onClick={() => OpenDropDown(index)}\n >\n <PrinterIcon />\n <DownIcon />\n {printToogle === index && (\n <div ref={dropdownRef}>\n <PrintDropDownReturn\n legacyURL={item?.return_order_product_label}\n legacyProductID={item?.id}\n />\n </div>\n )}\n </li>\n </CustomDrop>\n </ul>\n </td>\n </tr>\n ))\n )}\n </tbody>\n </StyledTable>\n </StyledTableWrapper>\n </>\n );\n};\n\nexport default OutstandingTable;\n"],"names":["OutstandingTable","statePagination","useAtom","filtersReducerAtom","pagination","outstandingReturnData","setOutstandingReturnData","useClientOutstandingReturnData","load","setLoading","useLoading","dropdownRefParent","useRef","dropdownRef","printToogle","setPrintToggle","usePrintOptionTOggle","locationData","useLocationData","setPaginationObject","UsePaginationData","callForFetch","usefetchAgain","clientPortal","useClientPortal","selectedOrderIds","setSelectedOrderIds","useSelectedClientPortOrders","selectClientAll","setSelectClientAll","useState","debouncedSearchText","useSearchText","state","dateFilterCPReducer","filters","sortConfig","setSortConfig","handleSort","key","prev","sortedData","useMemo","direction","a","b","valueA","valueB","renderSortIcon","columnKey","SortIcon","jsx","CaretDownFilledIcon","OpenDropDown","index","prevIndex","useEffect","handleClickOutside","event","cleanedFilters","f","modifiedFilters","fetchedOrderData","returnDataLoad","paginationData","fetchData","useAxios","count","rest","error","notification","updatedReturnData","returnItem","matchingLocation","location","handleSelectOrderId","id","orderId","StyledTableWrapper","StyledTable","Checkbox","e","isChecked","item","jsxs","WEIGHT_UNIT","VOLUME_UNIT","Skeleton","EmptyDataContainer","Empty","displayValueOrNA","NavLink","format","CustomDrop","PrinterIcon","DownIcon","PrintDropDownReturn"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OutstandingTable.js","sources":["../../../src/components/client-portal/OutstandingTable.tsx"],"sourcesContent":["import {\n Checkbox,\n displayValueOrNA,\n useAxios,\n} from '@bjsdistribution/dms-component-library';\nimport { Empty, notification, Skeleton } from 'antd';\nimport { format } from 'date-fns';\nimport { useAtom } from 'jotai';\nimport React, { useEffect, useMemo, useRef, useState } from 'react';\nimport { NavLink } from 'react-router-dom';\nimport { filtersReducerAtom } from '../order-daily-overview/header-filters/filterStore';\nimport {\n useClientOutstandingReturnData,\n useClientPortal,\n useLocationData,\n useSearchText,\n useSelectedClientPortOrders,\n} from '../store';\nimport { usefetchAgain } from '../order-view/store';\nimport {\n useLoading,\n UsePaginationData,\n usePrintOptionTOggle,\n} from '../order-daily-overview/store/store';\nimport SortIcon from '../../common/SortIcon';\nimport CaretDownFilledIcon from '../../common/CaretDownFilledIcon';\nimport { ApiResponse } from '../types';\nimport {\n CustomDrop,\n EmptyDataContainer,\n StyledTable,\n StyledTableWrapper,\n} from '../order-daily-overview/return-order-table/return-orders-filters/returnstyles';\nimport PrinterIcon from '../../assets/icons/PrinterIcon';\nimport DownIcon from '../../assets/icons/DownIcon';\nimport PrintDropDownReturn from '../order-view/details-filters/left-side-filters/dropdowns/PrintDropDownReturn';\nimport { dateFilterCPReducer } from './DateFilterStore';\nimport { WEIGHT_UNIT, VOLUME_UNIT } from '../../common/utils';\n\nconst OutstandingTable = () => {\n const [statePagination] = useAtom(filtersReducerAtom);\n const { 'x-pagination': pagination } = statePagination;\n const [\n outstandingReturnData,\n setOutstandingReturnData,\n ] = useClientOutstandingReturnData();\n const [load, setLoading] = useLoading();\n const dropdownRefParent = useRef<HTMLDivElement>(null);\n const dropdownRef = useRef<HTMLDivElement>(null);\n const [printToogle, setPrintToggle] = usePrintOptionTOggle();\n const [locationData] = useLocationData();\n const [, setPaginationObject] = UsePaginationData();\n const [callForFetch] = usefetchAgain();\n const [clientPortal] = useClientPortal();\n const [selectedOrderIds, setSelectedOrderIds] = useSelectedClientPortOrders();\n const [selectClientAll, setSelectClientAll] = useState(false);\n const [debouncedSearchText] = useSearchText();\n\n const [state] = useAtom(dateFilterCPReducer);\n const { 'x-filters': filters } = state;\n\n //sorting\n const [sortConfig, setSortConfig] = useState<{\n key: string;\n direction: 'asc' | 'desc';\n } | null>(null);\n\n const handleSort = (key: string) => {\n setSortConfig((prev: any) => {\n if (prev?.key === key && prev.direction === 'asc') {\n return { key, direction: 'desc' };\n }\n return { key, direction: 'asc' };\n });\n };\n\n const sortedData = useMemo(() => {\n if (!outstandingReturnData || !sortConfig) return outstandingReturnData;\n\n const { key, direction } = sortConfig;\n return [...outstandingReturnData].sort((a, b) => {\n const valueA = a[key];\n const valueB = b[key];\n\n if (typeof valueA === 'number' && typeof valueB === 'number') {\n return direction === 'asc' ? valueA - valueB : valueB - valueA;\n }\n if (typeof valueA === 'string' && typeof valueB === 'string') {\n return direction === 'asc'\n ? valueA.localeCompare(valueB)\n : valueB.localeCompare(valueA);\n }\n return 0;\n });\n }, [outstandingReturnData, sortConfig]);\n\n const renderSortIcon = (columnKey: string) => {\n if (!sortConfig || sortConfig.key !== columnKey) {\n return <SortIcon />;\n }\n return sortConfig.direction === 'asc' ? (\n <CaretDownFilledIcon />\n ) : (\n <CaretDownFilledIcon style={{ transform: 'rotate(180deg)' }} />\n );\n };\n\n const OpenDropDown = (index: number) => {\n setPrintToggle(prevIndex => (prevIndex === index ? null : index));\n };\n // Close dropdown outside click\n useEffect(() => {\n document.addEventListener('mousedown', handleClickOutside);\n return () => {\n document.removeEventListener('mousedown', handleClickOutside);\n };\n }, []);\n const handleClickOutside = (event: MouseEvent) => {\n if (\n dropdownRef.current &&\n !dropdownRef.current.contains(event.target as Node)\n ) {\n setPrintToggle(null);\n }\n };\n\n const cleanedFilters = filters.filter(f => f.field !== 'order_status');\n const baseFilters = [\n { field: 'isdeleted', op: '=', value: 0 },\n { field: 'product_return_action_id', op: '=', value: 'RTS' },\n ];\n\n const modifiedFilters = [...baseFilters, ...cleanedFilters];\n const {\n data: fetchedOrderData,\n loading: returnDataLoad,\n paginationData,\n fetchData,\n } = useAxios<ApiResponse>({\n endpoint: '/v1/return/product/pending/',\n method: 'GET',\n filters: modifiedFilters,\n pagination: { is_pagination: false },\n });\n\n useEffect(() => {\n if (clientPortal && debouncedSearchText === '') {\n fetchData();\n }\n }, [JSON.stringify(modifiedFilters), debouncedSearchText]);\n\n useEffect(() => {\n setLoading(returnDataLoad);\n if (fetchedOrderData && fetchedOrderData?.data) {\n setOutstandingReturnData(fetchedOrderData?.data);\n if (paginationData) {\n try {\n const { count, ...rest } = JSON.parse(paginationData);\n setPaginationObject(rest);\n } catch (error) {\n console.error('Error parsing paginationData:', error);\n notification.error({\n message: 'Error',\n description: 'Failed to parse pagination data',\n });\n }\n }\n }\n }, [fetchedOrderData, returnDataLoad]);\n\n useEffect(() => {\n setLoading(returnDataLoad);\n if (fetchedOrderData && fetchedOrderData?.data && locationData) {\n const updatedReturnData = fetchedOrderData.data.map(returnItem => {\n const matchingLocation = locationData.find(\n (location: any) => location?.token === returnItem?.return_location\n );\n return {\n ...returnItem,\n new_location: matchingLocation\n ? matchingLocation?.location_name\n : null,\n };\n });\n\n setOutstandingReturnData(updatedReturnData);\n }\n }, [fetchedOrderData, returnDataLoad, locationData, state, callForFetch]);\n\n //Client Portal\n const handleSelectOrderId = (id: string | number) => {\n setSelectedOrderIds(prev =>\n prev.includes(id) ? prev.filter(orderId => orderId !== id) : [...prev, id]\n );\n };\n\n const handleClientSelectAll = (e: React.ChangeEvent<HTMLInputElement>) => {\n const isChecked = e.target.checked;\n setSelectClientAll(isChecked);\n\n if (isChecked) {\n setSelectedOrderIds(\n outstandingReturnData?.map((item: any) => item?.order_id) || []\n );\n } else {\n setSelectedOrderIds([]);\n }\n };\n return (\n <>\n <StyledTableWrapper className=\"fortables\">\n <StyledTable>\n <thead>\n <tr>\n {/* <th className=\"emailInvoiceCheckbox\">\n <Checkbox checked={selectAll} onChange={handleSelectAll} />\n </th> */}\n <th className=\"emailInvoiceCheckbox\">\n <Checkbox\n checked={selectClientAll}\n onChange={handleClientSelectAll}\n />\n </th>\n <th onClick={() => handleSort('return_location_name')}>\n <div className=\"sortIconClass\">\n Return Location {renderSortIcon('return_location_name')}\n </div>\n </th>\n <th onClick={() => handleSort('recipient_name')}>\n <div className=\"sortIconClass\">\n Recipient {renderSortIcon('recipient_name')}\n </div>\n </th>\n <th>Return Action</th>\n <th>Code</th>\n <th>Description</th>\n <th>Part</th>\n <th onClick={() => handleSort('weight')}>\n <div className=\"sortIconClass\">\n Weight ({WEIGHT_UNIT}) {renderSortIcon('weight')}\n </div>\n </th>\n <th>{VOLUME_UNIT}</th>\n <th onClick={() => handleSort('return_reason')}>\n <div className=\"sortIconClass\">\n Return Reason {renderSortIcon('return_reason')}\n </div>\n </th>\n <th>Collected</th>\n <th onClick={() => handleSort('collection_reason')}>\n <div className=\"sortIconClass\">\n Collection Reason {renderSortIcon('collection_reason')}\n </div>\n </th>\n <th className=\"emailInvoiceShare\">Labels</th>\n </tr>\n </thead>\n <tbody>\n {load ? (\n <tr>\n <td colSpan={14}>\n <Skeleton active />\n </td>\n </tr>\n ) : sortedData?.length === 0 ? (\n <tr>\n <td colSpan={14}>\n <EmptyDataContainer>\n <Empty />\n </EmptyDataContainer>\n </td>\n </tr>\n ) : (\n sortedData?.map((item: any, index: any) => (\n <tr key={item.id}>\n <td>\n <Checkbox\n checked={selectedOrderIds.includes(item?.order_id)}\n onChange={() => handleSelectOrderId(item?.order_id)}\n />\n </td>\n <td> {displayValueOrNA(item?.return_location_name)}</td>\n <td>\n <ul style={{ listStyleType: 'none', padding: 0 }}>\n <li\n style={{\n color: '#0099ff',\n fontWeight: 600,\n paddingLeft: 0,\n }}\n >\n <NavLink to={`/orders/view/${item?.order_id}`}>\n {displayValueOrNA(item?.recipient_name)}\n </NavLink>\n </li>\n <li style={{ color: '#888075' }}>\n {displayValueOrNA(item?.postcode)}\n </li>\n </ul>\n </td>\n <td>{displayValueOrNA(item?.product_return_action)}</td>\n <td>{displayValueOrNA(item?.code)}</td>\n <td>{displayValueOrNA(item?.description)}</td>\n <td>{displayValueOrNA(item?.part)}</td>\n <td>\n {displayValueOrNA(item?.weight)}{' '}\n {item?.weight && item?.weight !== null ? WEIGHT_UNIT : ''}\n </td>\n <td>{displayValueOrNA(item?.cube)}</td>\n <td>{displayValueOrNA(item?.return_reason)}</td>\n <td>\n {item?.collected_at\n ? format(new Date(item?.collected_at), 'dd/MM/yyyy')\n : 'UNKNOWN'}\n </td>\n\n <td>{displayValueOrNA(item?.collection_reason)}</td>\n <td>\n <ul className=\"actionbox\">\n <CustomDrop\n ref={dropdownRefParent}\n className={printToogle === index ? 'active' : ''}\n >\n <li\n className=\"shareIconContainer\"\n onClick={() => OpenDropDown(index)}\n >\n <PrinterIcon />\n <DownIcon />\n {printToogle === index && (\n <div ref={dropdownRef}>\n <PrintDropDownReturn\n legacyURL={item?.return_order_product_label}\n legacyProductID={item?.legacy_product_id}\n />\n </div>\n )}\n </li>\n </CustomDrop>\n </ul>\n </td>\n </tr>\n ))\n )}\n </tbody>\n </StyledTable>\n </StyledTableWrapper>\n </>\n );\n};\n\nexport default OutstandingTable;\n"],"names":["OutstandingTable","statePagination","useAtom","filtersReducerAtom","pagination","outstandingReturnData","setOutstandingReturnData","useClientOutstandingReturnData","load","setLoading","useLoading","dropdownRefParent","useRef","dropdownRef","printToogle","setPrintToggle","usePrintOptionTOggle","locationData","useLocationData","setPaginationObject","UsePaginationData","callForFetch","usefetchAgain","clientPortal","useClientPortal","selectedOrderIds","setSelectedOrderIds","useSelectedClientPortOrders","selectClientAll","setSelectClientAll","useState","debouncedSearchText","useSearchText","state","dateFilterCPReducer","filters","sortConfig","setSortConfig","handleSort","key","prev","sortedData","useMemo","direction","a","b","valueA","valueB","renderSortIcon","columnKey","SortIcon","jsx","CaretDownFilledIcon","OpenDropDown","index","prevIndex","useEffect","handleClickOutside","event","cleanedFilters","f","modifiedFilters","fetchedOrderData","returnDataLoad","paginationData","fetchData","useAxios","count","rest","error","notification","updatedReturnData","returnItem","matchingLocation","location","handleSelectOrderId","id","orderId","StyledTableWrapper","StyledTable","Checkbox","e","isChecked","item","jsxs","WEIGHT_UNIT","VOLUME_UNIT","Skeleton","EmptyDataContainer","Empty","displayValueOrNA","NavLink","format","CustomDrop","PrinterIcon","DownIcon","PrintDropDownReturn"],"mappings":"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"}
|
|
@@ -32,8 +32,8 @@ const Gt = [
|
|
|
32
32
|
if (!h || !m) return h;
|
|
33
33
|
const { key: t, direction: n } = m;
|
|
34
34
|
return [...h].sort((o, c) => {
|
|
35
|
-
const
|
|
36
|
-
return typeof
|
|
35
|
+
const l = o[t], i = c[t];
|
|
36
|
+
return typeof l == "number" && typeof i == "number" ? n === "asc" ? l - i : i - l : typeof l == "string" && typeof i == "string" ? n === "asc" ? l.localeCompare(i) : i.localeCompare(l) : 0;
|
|
37
37
|
});
|
|
38
38
|
}, [h, m]), g = (t) => !m || m.key !== t ? /* @__PURE__ */ e(yt, {}) : m.direction === "asc" ? /* @__PURE__ */ e(K, {}) : /* @__PURE__ */ e(K, {}), nt = (t) => {
|
|
39
39
|
F((n) => n === t ? null : t);
|
|
@@ -93,37 +93,37 @@ const Gt = [
|
|
|
93
93
|
(r) => y(r)
|
|
94
94
|
), c = S.length > 0 ? S[0]?.product_return_action : o?.product_return_action;
|
|
95
95
|
if (!c) return;
|
|
96
|
-
const
|
|
96
|
+
const l = h?.filter(
|
|
97
97
|
(r) => y(r) && r?.product_return_action === c
|
|
98
|
-
),
|
|
98
|
+
), i = l.map((r) => ({
|
|
99
99
|
id: r.id,
|
|
100
100
|
return_locations: r?.return_location_name,
|
|
101
101
|
return_location: r?.return_location,
|
|
102
|
-
products: r?.
|
|
102
|
+
products: r?.legacy_product_id,
|
|
103
103
|
product_return_action: r?.product_return_action,
|
|
104
104
|
return_location_token: r?.return_location
|
|
105
|
-
})), d =
|
|
105
|
+
})), d = l.map((r) => ({
|
|
106
106
|
id: r.id,
|
|
107
107
|
account_number: G,
|
|
108
108
|
customer_id: Number(L),
|
|
109
|
-
products: [r?.
|
|
109
|
+
products: [r?.legacy_product_id],
|
|
110
110
|
return_action: r?.product_return_action,
|
|
111
111
|
return_location_token: r?.return_location || null
|
|
112
112
|
}));
|
|
113
|
-
console.log(d, "newPayloadnewPayload"), k(
|
|
113
|
+
console.log(d, "newPayloadnewPayload"), k(i), N(d);
|
|
114
114
|
} else
|
|
115
115
|
k([]), N([]), R([]);
|
|
116
|
-
}, at = (t, n, o, c,
|
|
117
|
-
k((
|
|
118
|
-
if (
|
|
116
|
+
}, at = (t, n, o, c, l) => {
|
|
117
|
+
k((i) => {
|
|
118
|
+
if (i?.some(
|
|
119
119
|
(r) => r.id === t
|
|
120
120
|
)) {
|
|
121
|
-
const r =
|
|
121
|
+
const r = i.filter(
|
|
122
122
|
(u) => u.id !== t
|
|
123
123
|
);
|
|
124
124
|
Q((u) => ({
|
|
125
125
|
...u,
|
|
126
|
-
products:
|
|
126
|
+
products: l,
|
|
127
127
|
return_action: c || null,
|
|
128
128
|
return_location_token: n || null
|
|
129
129
|
})), N(
|
|
@@ -140,13 +140,13 @@ const Gt = [
|
|
|
140
140
|
id: t,
|
|
141
141
|
account_number: G,
|
|
142
142
|
customer_id: Number(L),
|
|
143
|
-
products: [
|
|
143
|
+
products: [l],
|
|
144
144
|
return_action: c || null,
|
|
145
145
|
return_location_token: n || null
|
|
146
146
|
};
|
|
147
147
|
N((C) => [...C, r]);
|
|
148
148
|
const D = [
|
|
149
|
-
...
|
|
149
|
+
...i,
|
|
150
150
|
{
|
|
151
151
|
id: t,
|
|
152
152
|
return_location: n,
|
|
@@ -166,7 +166,7 @@ const Gt = [
|
|
|
166
166
|
return;
|
|
167
167
|
}
|
|
168
168
|
const t = P?.reduce((o, c) => {
|
|
169
|
-
const { return_location_token:
|
|
169
|
+
const { return_location_token: l, id: i } = c, d = l || `no_token_${i}`;
|
|
170
170
|
return o[d] || (o[d] = {
|
|
171
171
|
...c,
|
|
172
172
|
products: [],
|
|
@@ -238,7 +238,7 @@ const Gt = [
|
|
|
238
238
|
t?.return_location,
|
|
239
239
|
t?.return_location_name,
|
|
240
240
|
t?.product_return_action,
|
|
241
|
-
t?.
|
|
241
|
+
t?.legacy_product_id
|
|
242
242
|
)
|
|
243
243
|
}
|
|
244
244
|
)
|
|
@@ -304,7 +304,7 @@ const Gt = [
|
|
|
304
304
|
St,
|
|
305
305
|
{
|
|
306
306
|
legacyURL: t?.return_order_product_label,
|
|
307
|
-
legacyProductID: t?.
|
|
307
|
+
legacyProductID: t?.legacy_product_id
|
|
308
308
|
}
|
|
309
309
|
) })
|
|
310
310
|
]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReturnOrderTable.js","sources":["../../../../../src/components/order-daily-overview/return-order-table/return-orders-filters/ReturnOrderTable.tsx"],"sourcesContent":["import { Checkbox, useApiHook } from '@bjsdistribution/dms-component-library';\nimport { Empty, notification, Skeleton, Tooltip } from 'antd';\nimport { format } from 'date-fns';\nimport { useAtom } from 'jotai';\nimport React, { useEffect, useMemo, useRef, useState } from 'react';\nimport DownIcon from '../../../../assets/icons/DownIcon';\nimport PrinterIcon from '../../../../assets/icons/PrinterIcon';\nimport CaretDownFilledIcon from '../../../../common/CaretDownFilledIcon';\nimport SortIcon from '../../../../common/SortIcon';\nimport PrintDropDownReturn from '../../../order-view/details-filters/left-side-filters/dropdowns/PrintDropDownReturn';\nimport { usefetchAgain, useReturnData } from '../../../order-view/store';\nimport {\n useFlatCustomerData,\n useGroupedPayload,\n useLocationData,\n useNewReturnPayload,\n useReturnPayload,\n useSelectAll,\n useSelectedOrders,\n} from '../../../store';\nimport { ApiResponse } from '../../../types';\nimport { filtersReducerAtom } from '../../header-filters/filterStore';\nimport { displayValueOrNA } from '../../shared/utlis';\nimport {\n useLoading,\n UsePaginationData,\n usePrintOptionTOggle,\n} from '../../store/store';\nimport { EmptyDataContainer } from '../../table/table-data/styles';\nimport { CustomDrop, StyledTable, StyledTableWrapper } from './returnstyles';\nimport { NavLink, useSearchParams } from 'react-router-dom';\nimport { VOLUME_UNIT } from '../../../../common/utils';\nimport { WEIGHT_UNIT, getAccountTypeLabel } from '../../../../common/utils';\n\nconst SELECTABLE_ACTIONS = [\n 'RTS',\n 'CLAIMS PAID',\n 'DISPOSE',\n 'RE-ALLOCATE',\n 'RECYCLE',\n 'UNKNOWN',\n];\n\nconst isSelectableItem = (item: any) =>\n SELECTABLE_ACTIONS.includes(item?.product_return_action) &&\n item?.return_location !== 'null' &&\n item?.return_location !== null;\n\nconst ReturnOrderTable = () => {\n const [state] = useAtom(filtersReducerAtom);\n const [selectedReturnOrder, setSelectedReturnOrder] = useSelectedOrders();\n const [selectAll, setSelectAll] = useSelectAll();\n const { 'x-filters': filters, 'x-pagination': pagination } = state;\n const [returnData, setReturnData] = useReturnData();\n const [load, setLoading] = useLoading();\n const dropdownRefParent = useRef<HTMLDivElement>(null);\n const dropdownRef = useRef<HTMLDivElement>(null);\n const [printToogle, setPrintToggle] = usePrintOptionTOggle();\n const [, setReturnPayload] = useReturnPayload();\n const [newpayload, setNewPayload] = useNewReturnPayload();\n const [, setGrouped] = useGroupedPayload();\n const [locationData] = useLocationData();\n const [, setPaginationObject] = UsePaginationData();\n const [callForFetch] = usefetchAgain();\n const [searchParams] = useSearchParams();\n const urlCustomerId = searchParams.get('customerId');\n //sorting\n const [sortConfig, setSortConfig] = useState<{\n key: string;\n direction: 'asc' | 'desc';\n } | null>(null);\n\n const handleSort = (key: string) => {\n setSortConfig((prev: any) => {\n if (prev?.key === key && prev.direction === 'asc') {\n return { key, direction: 'desc' };\n }\n return { key, direction: 'asc' };\n });\n };\n\n const sortedData = useMemo(() => {\n if (!returnData || !sortConfig) return returnData;\n\n const { key, direction } = sortConfig;\n return [...returnData].sort((a, b) => {\n const valueA = a[key];\n const valueB = b[key];\n\n if (typeof valueA === 'number' && typeof valueB === 'number') {\n return direction === 'asc' ? valueA - valueB : valueB - valueA;\n }\n if (typeof valueA === 'string' && typeof valueB === 'string') {\n return direction === 'asc'\n ? valueA.localeCompare(valueB)\n : valueB.localeCompare(valueA);\n }\n return 0;\n });\n }, [returnData, sortConfig]);\n\n const renderSortIcon = (columnKey: string) => {\n if (!sortConfig || sortConfig.key !== columnKey) {\n return <SortIcon />;\n }\n return sortConfig.direction === 'asc' ? (\n <CaretDownFilledIcon />\n ) : (\n <CaretDownFilledIcon />\n );\n };\n\n const OpenDropDown = (index: number) => {\n setPrintToggle(prevIndex => (prevIndex === index ? null : index));\n };\n // Close dropdown outside click\n useEffect(() => {\n document.addEventListener('mousedown', handleClickOutside);\n return () => {\n document.removeEventListener('mousedown', handleClickOutside);\n };\n }, []);\n const handleClickOutside = (event: MouseEvent) => {\n if (\n dropdownRef.current &&\n !dropdownRef.current.contains(event.target as Node)\n ) {\n setPrintToggle(null);\n }\n };\n\n const {\n data: fetchedOrderData,\n loading: returnDataLoad,\n paginationData,\n setShouldPerformAction,\n } = useApiHook<ApiResponse>({\n endpoint: '/v1/return/product/pending/',\n method: 'GET',\n filters: filters,\n pagination: { is_pagination: false } as any,\n performAction: false,\n showLoader: false,\n });\n\n useEffect(() => {\n setLoading(returnDataLoad);\n if (fetchedOrderData && fetchedOrderData?.data) {\n setReturnData(fetchedOrderData?.data);\n if (paginationData) {\n try {\n const { count, ...rest } = JSON.parse(paginationData);\n setPaginationObject(rest);\n } catch (error) {\n console.error('Error parsing paginationData:', error);\n notification.error({\n message: 'Error',\n description: 'Failed to parse pagination data',\n });\n }\n }\n }\n }, [fetchedOrderData, returnDataLoad]);\n\n useEffect(() => {\n setLoading(returnDataLoad);\n setShouldPerformAction(true);\n if (fetchedOrderData && fetchedOrderData?.data && locationData) {\n const updatedReturnData = fetchedOrderData.data.map(returnItem => {\n const matchingLocation = locationData.find(\n (location: any) => location?.token === returnItem?.return_location\n );\n return {\n ...returnItem,\n new_location: matchingLocation\n ? matchingLocation?.location_name\n : null,\n };\n });\n\n setReturnData(updatedReturnData);\n }\n // setShouldPerformAction(false);\n }, [fetchedOrderData, returnDataLoad, locationData, state, callForFetch]);\n // const [customers] = useCustomerData();\n const [flatCustomers] = useFlatCustomerData();\n\n const selectedCustomer = flatCustomers?.find((customer: any) => {\n const customerId = customer?.customer_id?.toString();\n return customerId && customerId === urlCustomerId;\n });\n\n const accountNumber = selectedCustomer?.account_number;\n console.log(selectedCustomer, 'selectedCustomer');\n const handleSelectAll = (e: any) => {\n const isChecked = e.target.checked;\n setSelectAll(isChecked);\n\n if (isChecked) {\n const firstSelectable = returnData?.find((loc: any) =>\n isSelectableItem(loc)\n );\n const targetAction =\n selectedReturnOrder.length > 0\n ? selectedReturnOrder[0]?.product_return_action\n : firstSelectable?.product_return_action;\n\n if (!targetAction) return;\n\n const filteredData = returnData?.filter(\n (loc: any) =>\n isSelectableItem(loc) && loc?.product_return_action === targetAction\n );\n\n const selectedOrders = filteredData.map((loc: any) => ({\n id: loc.id,\n return_locations: loc?.return_location_name,\n return_location: loc?.return_location,\n products: loc?.id,\n product_return_action: loc?.product_return_action,\n return_location_token: loc?.return_location,\n }));\n const newPayload = filteredData.map((loc: any) => ({\n id: loc.id,\n account_number: accountNumber,\n customer_id: Number(urlCustomerId),\n products: [loc?.id],\n return_action: loc?.product_return_action,\n return_location_token: loc?.return_location || null,\n }));\n console.log(newPayload, 'newPayloadnewPayload');\n\n setSelectedReturnOrder(selectedOrders);\n setNewPayload(newPayload);\n } else {\n setSelectedReturnOrder([]);\n setNewPayload([]);\n setGrouped([]);\n }\n };\n\n const handleSelectOrderReturn = (\n id: any,\n return_location: any,\n return_location_name: any,\n product_return_action: any,\n legacy_product_id: any\n ) => {\n setSelectedReturnOrder((prevSelectedLocations: any) => {\n const isSelected = prevSelectedLocations?.some(\n (loc: any) => loc.id === id\n );\n if (isSelected) {\n const updatedSelectedLocations = prevSelectedLocations.filter(\n (loc: any) => loc.id !== id\n );\n\n setReturnPayload(prevState => ({\n ...prevState,\n products: id,\n return_action: product_return_action || null,\n return_location_token: return_location || null,\n }));\n\n setNewPayload((prevPayload: any) =>\n prevPayload.filter((item: any) => item.id !== id)\n );\n\n const targetAction = product_return_action;\n const totalItemsOfAction = returnData?.filter(\n (loc: any) =>\n isSelectableItem(loc) && loc?.product_return_action === targetAction\n )?.length;\n\n setSelectAll(\n updatedSelectedLocations?.length > 0 &&\n updatedSelectedLocations?.length === totalItemsOfAction\n );\n return updatedSelectedLocations;\n } else {\n const newReturnPayload = {\n id,\n account_number: accountNumber,\n customer_id: Number(urlCustomerId),\n products: [id],\n return_action: product_return_action || null,\n return_location_token: return_location || null,\n };\n\n setNewPayload((prevPayload: any) => [...prevPayload, newReturnPayload]);\n\n const updatedSelectedLocations = [\n ...prevSelectedLocations,\n {\n id,\n return_location,\n return_location_name,\n product_return_action,\n },\n ];\n\n const targetAction = product_return_action;\n const totalItemsOfAction = returnData?.filter(\n (loc: any) =>\n isSelectableItem(loc) && loc?.product_return_action === targetAction\n )?.length;\n\n setSelectAll(updatedSelectedLocations?.length === totalItemsOfAction);\n return updatedSelectedLocations;\n }\n });\n };\n\n useEffect(() => {\n if (newpayload?.length === 0) {\n setGrouped([]);\n return;\n }\n\n const groupedPayload = newpayload?.reduce((acc: any, item: any) => {\n const { return_location_token, id } = item;\n const key = return_location_token || `no_token_${id}`;\n\n if (!acc[key]) {\n acc[key] = {\n ...item,\n products: [],\n return_action: [],\n };\n }\n\n acc[key].products = [...acc[key].products, ...item.products];\n\n acc[key].return_action = Array.from(\n new Set([...acc[key].return_action, ...item.return_action])\n );\n\n return acc;\n }, {});\n const mergedPayload = Object.values(groupedPayload);\n setGrouped(mergedPayload);\n }, [newpayload]);\n return (\n <>\n <StyledTableWrapper className=\"fortables\">\n <StyledTable>\n <thead>\n <tr>\n {/* <th className=\"emailInvoiceCheckbox\">\n <Checkbox checked={selectAll} onChange={handleSelectAll} />\n </th> */}\n {returnData?.some((item: any) => isSelectableItem(item)) ? (\n <th className=\"emailInvoiceCheckbox\">\n <Checkbox checked={selectAll} onChange={handleSelectAll} />\n </th>\n ) : (\n <th></th>\n )}\n <th onClick={() => handleSort('location')}>\n <div className=\"sortIconClass\">\n Product Location {renderSortIcon('location')}\n </div>\n </th>\n <th onClick={() => handleSort('return_location_name')}>\n <div className=\"sortIconClass\">\n Return Location {renderSortIcon('return_location_name')}\n </div>\n </th>\n <th>Client</th>\n <th onClick={() => handleSort('recipient_name')}>\n <div className=\"sortIconClass\">\n Recipient {renderSortIcon('recipient_name')}\n </div>\n </th>\n <th>Return Action</th>\n <th>Code</th>\n <th>Description</th>\n <th>Part</th>\n <th onClick={() => handleSort('weight')}>\n <div className=\"sortIconClass\">\n Weight ({WEIGHT_UNIT}) {renderSortIcon('weight')}\n </div>\n </th>\n <th>{VOLUME_UNIT}</th>\n <th onClick={() => handleSort('return_reason')}>\n <div className=\"sortIconClass\">\n Return Reason {renderSortIcon('return_reason')}\n </div>\n </th>\n <th>Collected</th>\n <th onClick={() => handleSort('collection_reason')}>\n <div className=\"sortIconClass\">\n Collection Reason {renderSortIcon('collection_reason')}\n </div>\n </th>\n <th className=\"emailInvoiceShare\">Labels</th>\n </tr>\n </thead>\n <tbody>\n {load ? (\n <tr>\n <td colSpan={14}>\n <Skeleton active />\n </td>\n </tr>\n ) : sortedData?.length === 0 ? (\n <tr>\n <td colSpan={14}>\n <EmptyDataContainer>\n <Empty />\n </EmptyDataContainer>\n </td>\n </tr>\n ) : (\n sortedData?.map((item: any, index: any) => (\n <tr key={item.id}>\n <td>\n {isSelectableItem(item) ? (() => {\n const isDisabled =\n selectedReturnOrder?.length > 0 &&\n selectedReturnOrder[0]?.product_return_action !==\n item?.product_return_action;\n\n return (\n <Tooltip\n title={\n isDisabled\n ? 'Cannot select different return actions'\n : ''\n }\n >\n <span\n className={isDisabled ? 'disabled-wrapper' : ''}\n >\n <Checkbox\n className=\"custom-check\"\n disabled={isDisabled}\n checked={selectedReturnOrder.some(\n (selectedInvoice: any) =>\n selectedInvoice?.id === item?.id\n )}\n onChange={() =>\n handleSelectOrderReturn(\n item?.id,\n item?.return_location,\n item?.return_location_name,\n item?.product_return_action,\n item?.id\n )\n }\n />\n </span>\n </Tooltip>\n );\n })() : null}\n </td>\n\n <td>\n {item?.location !== null && item?.location !== undefined ? (\n item?.location\n ) : (\n <div className=\"awaiting\">Awaiting</div>\n )}\n </td>\n <td> {displayValueOrNA(item?.return_location_name)}</td>\n <td title={item?.client_name ?? ''}>\n {displayValueOrNA(item?.client_name)}\n {getAccountTypeLabel(item?.owner_id) && (\n <span> ({getAccountTypeLabel(item?.owner_id)})</span>\n )}\n </td>\n <td>\n <ul style={{ listStyleType: 'none', padding: 0 }}>\n <li\n style={{\n color: '#0099ff',\n fontWeight: 600,\n paddingLeft: 0,\n }}\n >\n <NavLink to={`/orders/view/${item?.order_id}`}>\n {displayValueOrNA(item?.recipient_name)}\n </NavLink>\n </li>\n <li style={{ color: '#888075' }}>\n {displayValueOrNA(item?.postcode)}\n </li>\n </ul>\n </td>\n <td>{displayValueOrNA(item?.product_return_action)}</td>\n <td>{displayValueOrNA(item?.code)}</td>\n <td>{displayValueOrNA(item?.description)}</td>\n <td>{displayValueOrNA(item?.part)}</td>\n <td>\n {displayValueOrNA(item?.weight)}{' '}\n {item?.weight && item?.weight !== null ? WEIGHT_UNIT : ''}\n </td>\n <td>{displayValueOrNA(item?.cube)}</td>\n <td>{displayValueOrNA(item?.return_reason)}</td>\n <td>\n {item?.collected_at\n ? format(new Date(item?.collected_at), 'dd/MM/yyyy')\n : 'UNKNOWN'}\n </td>\n\n <td>{displayValueOrNA(item?.collection_reason)}</td>\n <td>\n <ul className=\"actionbox\">\n <CustomDrop\n ref={dropdownRefParent}\n className={printToogle === index ? 'active' : ''}\n >\n <li\n className=\"shareIconContainer\"\n onClick={() => OpenDropDown(index)}\n >\n <PrinterIcon />\n <DownIcon />\n {printToogle === index && (\n <div ref={dropdownRef}>\n <PrintDropDownReturn\n legacyURL={item?.return_order_product_label}\n legacyProductID={item?.id}\n />\n </div>\n )}\n </li>\n </CustomDrop>\n </ul>\n </td>\n </tr>\n ))\n )}\n </tbody>\n </StyledTable>\n </StyledTableWrapper>\n </>\n );\n};\n\nexport default ReturnOrderTable;\n"],"names":["SELECTABLE_ACTIONS","isSelectableItem","item","ReturnOrderTable","state","useAtom","filtersReducerAtom","selectedReturnOrder","setSelectedReturnOrder","useSelectedOrders","selectAll","setSelectAll","useSelectAll","filters","pagination","returnData","setReturnData","useReturnData","load","setLoading","useLoading","dropdownRefParent","useRef","dropdownRef","printToogle","setPrintToggle","usePrintOptionTOggle","setReturnPayload","useReturnPayload","newpayload","setNewPayload","useNewReturnPayload","setGrouped","useGroupedPayload","locationData","useLocationData","setPaginationObject","UsePaginationData","callForFetch","usefetchAgain","searchParams","useSearchParams","urlCustomerId","sortConfig","setSortConfig","useState","handleSort","key","prev","sortedData","useMemo","direction","a","b","valueA","valueB","renderSortIcon","columnKey","SortIcon","CaretDownFilledIcon","OpenDropDown","index","prevIndex","useEffect","handleClickOutside","event","fetchedOrderData","returnDataLoad","paginationData","setShouldPerformAction","useApiHook","count","rest","error","notification","updatedReturnData","returnItem","matchingLocation","location","flatCustomers","useFlatCustomerData","selectedCustomer","customer","customerId","accountNumber","handleSelectAll","e","isChecked","firstSelectable","loc","targetAction","filteredData","selectedOrders","newPayload","handleSelectOrderReturn","id","return_location","return_location_name","product_return_action","legacy_product_id","prevSelectedLocations","updatedSelectedLocations","prevState","prevPayload","totalItemsOfAction","newReturnPayload","groupedPayload","acc","return_location_token","mergedPayload","jsx","StyledTableWrapper","StyledTable","Checkbox","jsxs","WEIGHT_UNIT","VOLUME_UNIT","Skeleton","EmptyDataContainer","Empty","isDisabled","Tooltip","selectedInvoice","displayValueOrNA","getAccountTypeLabel","NavLink","format","CustomDrop","PrinterIcon","DownIcon","PrintDropDownReturn"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ReturnOrderTable.js","sources":["../../../../../src/components/order-daily-overview/return-order-table/return-orders-filters/ReturnOrderTable.tsx"],"sourcesContent":["import { Checkbox, useApiHook } from '@bjsdistribution/dms-component-library';\nimport { Empty, notification, Skeleton, Tooltip } from 'antd';\nimport { format } from 'date-fns';\nimport { useAtom } from 'jotai';\nimport React, { useEffect, useMemo, useRef, useState } from 'react';\nimport DownIcon from '../../../../assets/icons/DownIcon';\nimport PrinterIcon from '../../../../assets/icons/PrinterIcon';\nimport CaretDownFilledIcon from '../../../../common/CaretDownFilledIcon';\nimport SortIcon from '../../../../common/SortIcon';\nimport PrintDropDownReturn from '../../../order-view/details-filters/left-side-filters/dropdowns/PrintDropDownReturn';\nimport { usefetchAgain, useReturnData } from '../../../order-view/store';\nimport {\n useFlatCustomerData,\n useGroupedPayload,\n useLocationData,\n useNewReturnPayload,\n useReturnPayload,\n useSelectAll,\n useSelectedOrders,\n} from '../../../store';\nimport { ApiResponse } from '../../../types';\nimport { filtersReducerAtom } from '../../header-filters/filterStore';\nimport { displayValueOrNA } from '../../shared/utlis';\nimport {\n useLoading,\n UsePaginationData,\n usePrintOptionTOggle,\n} from '../../store/store';\nimport { EmptyDataContainer } from '../../table/table-data/styles';\nimport { CustomDrop, StyledTable, StyledTableWrapper } from './returnstyles';\nimport { NavLink, useSearchParams } from 'react-router-dom';\nimport { VOLUME_UNIT } from '../../../../common/utils';\nimport { WEIGHT_UNIT, getAccountTypeLabel } from '../../../../common/utils';\n\nconst SELECTABLE_ACTIONS = [\n 'RTS',\n 'CLAIMS PAID',\n 'DISPOSE',\n 'RE-ALLOCATE',\n 'RECYCLE',\n 'UNKNOWN',\n];\n\nconst isSelectableItem = (item: any) =>\n SELECTABLE_ACTIONS.includes(item?.product_return_action) &&\n item?.return_location !== 'null' &&\n item?.return_location !== null;\n\nconst ReturnOrderTable = () => {\n const [state] = useAtom(filtersReducerAtom);\n const [selectedReturnOrder, setSelectedReturnOrder] = useSelectedOrders();\n const [selectAll, setSelectAll] = useSelectAll();\n const { 'x-filters': filters, 'x-pagination': pagination } = state;\n const [returnData, setReturnData] = useReturnData();\n const [load, setLoading] = useLoading();\n const dropdownRefParent = useRef<HTMLDivElement>(null);\n const dropdownRef = useRef<HTMLDivElement>(null);\n const [printToogle, setPrintToggle] = usePrintOptionTOggle();\n const [, setReturnPayload] = useReturnPayload();\n const [newpayload, setNewPayload] = useNewReturnPayload();\n const [, setGrouped] = useGroupedPayload();\n const [locationData] = useLocationData();\n const [, setPaginationObject] = UsePaginationData();\n const [callForFetch] = usefetchAgain();\n const [searchParams] = useSearchParams();\n const urlCustomerId = searchParams.get('customerId');\n //sorting\n const [sortConfig, setSortConfig] = useState<{\n key: string;\n direction: 'asc' | 'desc';\n } | null>(null);\n\n const handleSort = (key: string) => {\n setSortConfig((prev: any) => {\n if (prev?.key === key && prev.direction === 'asc') {\n return { key, direction: 'desc' };\n }\n return { key, direction: 'asc' };\n });\n };\n\n const sortedData = useMemo(() => {\n if (!returnData || !sortConfig) return returnData;\n\n const { key, direction } = sortConfig;\n return [...returnData].sort((a, b) => {\n const valueA = a[key];\n const valueB = b[key];\n\n if (typeof valueA === 'number' && typeof valueB === 'number') {\n return direction === 'asc' ? valueA - valueB : valueB - valueA;\n }\n if (typeof valueA === 'string' && typeof valueB === 'string') {\n return direction === 'asc'\n ? valueA.localeCompare(valueB)\n : valueB.localeCompare(valueA);\n }\n return 0;\n });\n }, [returnData, sortConfig]);\n\n const renderSortIcon = (columnKey: string) => {\n if (!sortConfig || sortConfig.key !== columnKey) {\n return <SortIcon />;\n }\n return sortConfig.direction === 'asc' ? (\n <CaretDownFilledIcon />\n ) : (\n <CaretDownFilledIcon />\n );\n };\n\n const OpenDropDown = (index: number) => {\n setPrintToggle(prevIndex => (prevIndex === index ? null : index));\n };\n // Close dropdown outside click\n useEffect(() => {\n document.addEventListener('mousedown', handleClickOutside);\n return () => {\n document.removeEventListener('mousedown', handleClickOutside);\n };\n }, []);\n const handleClickOutside = (event: MouseEvent) => {\n if (\n dropdownRef.current &&\n !dropdownRef.current.contains(event.target as Node)\n ) {\n setPrintToggle(null);\n }\n };\n\n const {\n data: fetchedOrderData,\n loading: returnDataLoad,\n paginationData,\n setShouldPerformAction,\n } = useApiHook<ApiResponse>({\n endpoint: '/v1/return/product/pending/',\n method: 'GET',\n filters: filters,\n pagination: { is_pagination: false } as any,\n performAction: false,\n showLoader: false,\n });\n\n useEffect(() => {\n setLoading(returnDataLoad);\n if (fetchedOrderData && fetchedOrderData?.data) {\n setReturnData(fetchedOrderData?.data);\n if (paginationData) {\n try {\n const { count, ...rest } = JSON.parse(paginationData);\n setPaginationObject(rest);\n } catch (error) {\n console.error('Error parsing paginationData:', error);\n notification.error({\n message: 'Error',\n description: 'Failed to parse pagination data',\n });\n }\n }\n }\n }, [fetchedOrderData, returnDataLoad]);\n\n useEffect(() => {\n setLoading(returnDataLoad);\n setShouldPerformAction(true);\n if (fetchedOrderData && fetchedOrderData?.data && locationData) {\n const updatedReturnData = fetchedOrderData.data.map(returnItem => {\n const matchingLocation = locationData.find(\n (location: any) => location?.token === returnItem?.return_location\n );\n return {\n ...returnItem,\n new_location: matchingLocation\n ? matchingLocation?.location_name\n : null,\n };\n });\n\n setReturnData(updatedReturnData);\n }\n // setShouldPerformAction(false);\n }, [fetchedOrderData, returnDataLoad, locationData, state, callForFetch]);\n // const [customers] = useCustomerData();\n const [flatCustomers] = useFlatCustomerData();\n\n const selectedCustomer = flatCustomers?.find((customer: any) => {\n const customerId = customer?.customer_id?.toString();\n return customerId && customerId === urlCustomerId;\n });\n\n const accountNumber = selectedCustomer?.account_number;\n console.log(selectedCustomer, 'selectedCustomer');\n const handleSelectAll = (e: any) => {\n const isChecked = e.target.checked;\n setSelectAll(isChecked);\n\n if (isChecked) {\n const firstSelectable = returnData?.find((loc: any) =>\n isSelectableItem(loc)\n );\n const targetAction =\n selectedReturnOrder.length > 0\n ? selectedReturnOrder[0]?.product_return_action\n : firstSelectable?.product_return_action;\n\n if (!targetAction) return;\n\n const filteredData = returnData?.filter(\n (loc: any) =>\n isSelectableItem(loc) && loc?.product_return_action === targetAction\n );\n\n const selectedOrders = filteredData.map((loc: any) => ({\n id: loc.id,\n return_locations: loc?.return_location_name,\n return_location: loc?.return_location,\n products: loc?.legacy_product_id,\n product_return_action: loc?.product_return_action,\n return_location_token: loc?.return_location,\n }));\n const newPayload = filteredData.map((loc: any) => ({\n id: loc.id,\n account_number: accountNumber,\n customer_id: Number(urlCustomerId),\n products: [loc?.legacy_product_id],\n return_action: loc?.product_return_action,\n return_location_token: loc?.return_location || null,\n }));\n console.log(newPayload, 'newPayloadnewPayload');\n\n setSelectedReturnOrder(selectedOrders);\n setNewPayload(newPayload);\n } else {\n setSelectedReturnOrder([]);\n setNewPayload([]);\n setGrouped([]);\n }\n };\n\n const handleSelectOrderReturn = (\n id: any,\n return_location: any,\n return_location_name: any,\n product_return_action: any,\n legacy_product_id: any\n ) => {\n setSelectedReturnOrder((prevSelectedLocations: any) => {\n const isSelected = prevSelectedLocations?.some(\n (loc: any) => loc.id === id\n );\n if (isSelected) {\n const updatedSelectedLocations = prevSelectedLocations.filter(\n (loc: any) => loc.id !== id\n );\n\n setReturnPayload(prevState => ({\n ...prevState,\n products: legacy_product_id,\n return_action: product_return_action || null,\n return_location_token: return_location || null,\n }));\n\n setNewPayload((prevPayload: any) =>\n prevPayload.filter((item: any) => item.id !== id)\n );\n\n const targetAction = product_return_action;\n const totalItemsOfAction = returnData?.filter(\n (loc: any) =>\n isSelectableItem(loc) && loc?.product_return_action === targetAction\n )?.length;\n\n setSelectAll(\n updatedSelectedLocations?.length > 0 &&\n updatedSelectedLocations?.length === totalItemsOfAction\n );\n return updatedSelectedLocations;\n } else {\n const newReturnPayload = {\n id,\n account_number: accountNumber,\n customer_id: Number(urlCustomerId),\n products: [legacy_product_id],\n return_action: product_return_action || null,\n return_location_token: return_location || null,\n };\n\n setNewPayload((prevPayload: any) => [...prevPayload, newReturnPayload]);\n\n const updatedSelectedLocations = [\n ...prevSelectedLocations,\n {\n id,\n return_location,\n return_location_name,\n product_return_action,\n },\n ];\n\n const targetAction = product_return_action;\n const totalItemsOfAction = returnData?.filter(\n (loc: any) =>\n isSelectableItem(loc) && loc?.product_return_action === targetAction\n )?.length;\n\n setSelectAll(updatedSelectedLocations?.length === totalItemsOfAction);\n return updatedSelectedLocations;\n }\n });\n };\n\n useEffect(() => {\n if (newpayload?.length === 0) {\n setGrouped([]);\n return;\n }\n\n const groupedPayload = newpayload?.reduce((acc: any, item: any) => {\n const { return_location_token, id } = item;\n const key = return_location_token || `no_token_${id}`;\n\n if (!acc[key]) {\n acc[key] = {\n ...item,\n products: [],\n return_action: [],\n };\n }\n\n acc[key].products = [...acc[key].products, ...item.products];\n\n acc[key].return_action = Array.from(\n new Set([...acc[key].return_action, ...item.return_action])\n );\n\n return acc;\n }, {});\n const mergedPayload = Object.values(groupedPayload);\n setGrouped(mergedPayload);\n }, [newpayload]);\n return (\n <>\n <StyledTableWrapper className=\"fortables\">\n <StyledTable>\n <thead>\n <tr>\n {/* <th className=\"emailInvoiceCheckbox\">\n <Checkbox checked={selectAll} onChange={handleSelectAll} />\n </th> */}\n {returnData?.some((item: any) => isSelectableItem(item)) ? (\n <th className=\"emailInvoiceCheckbox\">\n <Checkbox checked={selectAll} onChange={handleSelectAll} />\n </th>\n ) : (\n <th></th>\n )}\n <th onClick={() => handleSort('location')}>\n <div className=\"sortIconClass\">\n Product Location {renderSortIcon('location')}\n </div>\n </th>\n <th onClick={() => handleSort('return_location_name')}>\n <div className=\"sortIconClass\">\n Return Location {renderSortIcon('return_location_name')}\n </div>\n </th>\n <th>Client</th>\n <th onClick={() => handleSort('recipient_name')}>\n <div className=\"sortIconClass\">\n Recipient {renderSortIcon('recipient_name')}\n </div>\n </th>\n <th>Return Action</th>\n <th>Code</th>\n <th>Description</th>\n <th>Part</th>\n <th onClick={() => handleSort('weight')}>\n <div className=\"sortIconClass\">\n Weight ({WEIGHT_UNIT}) {renderSortIcon('weight')}\n </div>\n </th>\n <th>{VOLUME_UNIT}</th>\n <th onClick={() => handleSort('return_reason')}>\n <div className=\"sortIconClass\">\n Return Reason {renderSortIcon('return_reason')}\n </div>\n </th>\n <th>Collected</th>\n <th onClick={() => handleSort('collection_reason')}>\n <div className=\"sortIconClass\">\n Collection Reason {renderSortIcon('collection_reason')}\n </div>\n </th>\n <th className=\"emailInvoiceShare\">Labels</th>\n </tr>\n </thead>\n <tbody>\n {load ? (\n <tr>\n <td colSpan={14}>\n <Skeleton active />\n </td>\n </tr>\n ) : sortedData?.length === 0 ? (\n <tr>\n <td colSpan={14}>\n <EmptyDataContainer>\n <Empty />\n </EmptyDataContainer>\n </td>\n </tr>\n ) : (\n sortedData?.map((item: any, index: any) => (\n <tr key={item.id}>\n <td>\n {isSelectableItem(item) ? (() => {\n const isDisabled =\n selectedReturnOrder?.length > 0 &&\n selectedReturnOrder[0]?.product_return_action !==\n item?.product_return_action;\n\n return (\n <Tooltip\n title={\n isDisabled\n ? 'Cannot select different return actions'\n : ''\n }\n >\n <span\n className={isDisabled ? 'disabled-wrapper' : ''}\n >\n <Checkbox\n className=\"custom-check\"\n disabled={isDisabled}\n checked={selectedReturnOrder.some(\n (selectedInvoice: any) =>\n selectedInvoice?.id === item?.id\n )}\n onChange={() =>\n handleSelectOrderReturn(\n item?.id,\n item?.return_location,\n item?.return_location_name,\n item?.product_return_action,\n item?.legacy_product_id\n )\n }\n />\n </span>\n </Tooltip>\n );\n })() : null}\n </td>\n\n <td>\n {item?.location !== null && item?.location !== undefined ? (\n item?.location\n ) : (\n <div className=\"awaiting\">Awaiting</div>\n )}\n </td>\n <td> {displayValueOrNA(item?.return_location_name)}</td>\n <td title={item?.client_name ?? ''}>\n {displayValueOrNA(item?.client_name)}\n {getAccountTypeLabel(item?.owner_id) && (\n <span> ({getAccountTypeLabel(item?.owner_id)})</span>\n )}\n </td>\n <td>\n <ul style={{ listStyleType: 'none', padding: 0 }}>\n <li\n style={{\n color: '#0099ff',\n fontWeight: 600,\n paddingLeft: 0,\n }}\n >\n <NavLink to={`/orders/view/${item?.order_id}`}>\n {displayValueOrNA(item?.recipient_name)}\n </NavLink>\n </li>\n <li style={{ color: '#888075' }}>\n {displayValueOrNA(item?.postcode)}\n </li>\n </ul>\n </td>\n <td>{displayValueOrNA(item?.product_return_action)}</td>\n <td>{displayValueOrNA(item?.code)}</td>\n <td>{displayValueOrNA(item?.description)}</td>\n <td>{displayValueOrNA(item?.part)}</td>\n <td>\n {displayValueOrNA(item?.weight)}{' '}\n {item?.weight && item?.weight !== null ? WEIGHT_UNIT : ''}\n </td>\n <td>{displayValueOrNA(item?.cube)}</td>\n <td>{displayValueOrNA(item?.return_reason)}</td>\n <td>\n {item?.collected_at\n ? format(new Date(item?.collected_at), 'dd/MM/yyyy')\n : 'UNKNOWN'}\n </td>\n\n <td>{displayValueOrNA(item?.collection_reason)}</td>\n <td>\n <ul className=\"actionbox\">\n <CustomDrop\n ref={dropdownRefParent}\n className={printToogle === index ? 'active' : ''}\n >\n <li\n className=\"shareIconContainer\"\n onClick={() => OpenDropDown(index)}\n >\n <PrinterIcon />\n <DownIcon />\n {printToogle === index && (\n <div ref={dropdownRef}>\n <PrintDropDownReturn\n legacyURL={item?.return_order_product_label}\n legacyProductID={item?.legacy_product_id}\n />\n </div>\n )}\n </li>\n </CustomDrop>\n </ul>\n </td>\n </tr>\n ))\n )}\n </tbody>\n </StyledTable>\n </StyledTableWrapper>\n </>\n );\n};\n\nexport default ReturnOrderTable;\n"],"names":["SELECTABLE_ACTIONS","isSelectableItem","item","ReturnOrderTable","state","useAtom","filtersReducerAtom","selectedReturnOrder","setSelectedReturnOrder","useSelectedOrders","selectAll","setSelectAll","useSelectAll","filters","pagination","returnData","setReturnData","useReturnData","load","setLoading","useLoading","dropdownRefParent","useRef","dropdownRef","printToogle","setPrintToggle","usePrintOptionTOggle","setReturnPayload","useReturnPayload","newpayload","setNewPayload","useNewReturnPayload","setGrouped","useGroupedPayload","locationData","useLocationData","setPaginationObject","UsePaginationData","callForFetch","usefetchAgain","searchParams","useSearchParams","urlCustomerId","sortConfig","setSortConfig","useState","handleSort","key","prev","sortedData","useMemo","direction","a","b","valueA","valueB","renderSortIcon","columnKey","SortIcon","CaretDownFilledIcon","OpenDropDown","index","prevIndex","useEffect","handleClickOutside","event","fetchedOrderData","returnDataLoad","paginationData","setShouldPerformAction","useApiHook","count","rest","error","notification","updatedReturnData","returnItem","matchingLocation","location","flatCustomers","useFlatCustomerData","selectedCustomer","customer","customerId","accountNumber","handleSelectAll","e","isChecked","firstSelectable","loc","targetAction","filteredData","selectedOrders","newPayload","handleSelectOrderReturn","id","return_location","return_location_name","product_return_action","legacy_product_id","prevSelectedLocations","updatedSelectedLocations","prevState","prevPayload","totalItemsOfAction","newReturnPayload","groupedPayload","acc","return_location_token","mergedPayload","jsx","StyledTableWrapper","StyledTable","Checkbox","jsxs","WEIGHT_UNIT","VOLUME_UNIT","Skeleton","EmptyDataContainer","Empty","isDisabled","Tooltip","selectedInvoice","displayValueOrNA","getAccountTypeLabel","NavLink","format","CustomDrop","PrinterIcon","DownIcon","PrintDropDownReturn"],"mappings":"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"}
|