@bjsdistribution/dms-client-return 0.1.99-prod → 0.2.0-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 +118 -112
- package/dist/components/client-portal/OutstandingTable.js.map +1 -1
- package/dist/components/fakeData.js.map +1 -1
- package/dist/components/order-daily-overview/common/fakedata.js.map +1 -1
- package/dist/components/order-daily-overview/return-after-table/table/OrderTable.js +33 -31
- package/dist/components/order-daily-overview/return-after-table/table/OrderTable.js.map +1 -1
- package/dist/components/order-daily-overview/return-after-table/table-filters/ReturnOrderFilter.js +82 -79
- package/dist/components/order-daily-overview/return-after-table/table-filters/ReturnOrderFilter.js.map +1 -1
- package/dist/components/order-daily-overview/return-order-table/return-orders-filters/ReturnOrderTable.js +157 -151
- package/dist/components/order-daily-overview/return-order-table/return-orders-filters/ReturnOrderTable.js.map +1 -1
- package/dist/components/order-view/order-actions/Dropdown.js +3 -3
- package/dist/components/order-view/order-actions/Dropdown.js.map +1 -1
- package/dist/components/order-view/order-actions/actions/cancel-order/CancelOrderTable.js +47 -45
- package/dist/components/order-view/order-actions/actions/cancel-order/CancelOrderTable.js.map +1 -1
- package/dist/components/order-view/order-actions/actions/cancel-order/ReturnReason.js +36 -23
- package/dist/components/order-view/order-actions/actions/cancel-order/ReturnReason.js.map +1 -1
- package/dist/components/order-view/order-actions/actions/confirm-order/tables/ProductTable.js +25 -23
- package/dist/components/order-view/order-actions/actions/confirm-order/tables/ProductTable.js.map +1 -1
- package/dist/components/order-view/order-actions/actions/force-debrief/ForceDebriefModal.js +89 -88
- package/dist/components/order-view/order-actions/actions/force-debrief/ForceDebriefModal.js.map +1 -1
- package/dist/components/order-view/order-actions/actions/force-debrief/charges/collection-add-ons/index.js +16 -16
- package/dist/components/order-view/order-actions/actions/force-debrief/charges/collection-add-ons/index.js.map +1 -1
- package/dist/components/order-view/order-actions/actions/force-debrief/escalation/EscalationReason.js +23 -22
- package/dist/components/order-view/order-actions/actions/force-debrief/escalation/EscalationReason.js.map +1 -1
- package/dist/components/order-view/order-actions/actions/force-debrief/order-info/RadioButtons.js +56 -52
- package/dist/components/order-view/order-actions/actions/force-debrief/order-info/RadioButtons.js.map +1 -1
- package/dist/components/order-view/order-actions/actions/force-debrief/order-info/dropdowns/FailureReasonDropdown.js +27 -26
- package/dist/components/order-view/order-actions/actions/force-debrief/order-info/dropdowns/FailureReasonDropdown.js.map +1 -1
- package/dist/components/order-view/order-actions/actions/hold-order/HoldOrderModal.js +29 -29
- package/dist/components/order-view/order-actions/actions/hold-order/HoldOrderModal.js.map +1 -1
- package/dist/components/order-view/order-actions/actions/split-order/SplitOrderTable.js +72 -71
- package/dist/components/order-view/order-actions/actions/split-order/SplitOrderTable.js.map +1 -1
- package/dist/components/order-view/order-actions/actions/uncancel-order/UncancelOrderTable.js +37 -35
- package/dist/components/order-view/order-actions/actions/uncancel-order/UncancelOrderTable.js.map +1 -1
- package/dist/components/order-view/order-details/expanded-content/services-section/OrderServices.js +20 -18
- package/dist/components/order-view/order-details/expanded-content/services-section/OrderServices.js.map +1 -1
- package/dist/components/order-view/order-details/expanded-content/services-section/ServiceType.js +26 -22
- package/dist/components/order-view/order-details/expanded-content/services-section/ServiceType.js.map +1 -1
- package/dist/components/order-view/order-details/helper.js.map +1 -1
- package/dist/components/order-view/return-client-products/product-table/ReturnProductTable.js +53 -53
- package/dist/components/order-view/return-client-products/product-table/ReturnProductTable.js.map +1 -1
- package/dist/components/order-view/toolbox-resources/expanded-content/index.js +6 -7
- package/dist/components/order-view/toolbox-resources/expanded-content/index.js.map +1 -1
- package/dist/components/utils.js +4 -5
- package/dist/components/utils.js.map +1 -1
- package/dist/types/components/order-view/order-actions/Dropdown.d.ts +1 -0
- package/dist/types/components/utils.d.ts +0 -1
- package/package.json +2 -2
package/dist/components/order-view/order-actions/actions/force-debrief/ForceDebriefModal.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ForceDebriefModal.js","sources":["../../../../../../src/components/order-view/order-actions/actions/force-debrief/ForceDebriefModal.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport OrderActionModal from '../../../../../common/modals/order-action-modal/OrderActionModal';\nimport {\n useActiveTab,\n useChargesState,\n useCurrentAction,\n useCustomerDetails,\n useCustomerInfo,\n useEscalationCategory,\n useEscalationLevel,\n useEscalationReason,\n useFailureReason,\n useGlobalEscData,\n useGlobalStateHitAuditLog,\n useGlobalStateHitOrder,\n useNewStatus,\n useOrderCancelReason,\n useOrderCustomersList,\n useOrderDetails,\n useOrderHoldReason,\n usePrevOrderDetails,\n useProductDetails,\n} from '../../../store';\nimport OrderCharges from './charges/order-charges';\nimport CollectionAddOns from './charges/collection-add-ons';\nimport DisposalCharge from './charges/disposal-charges';\nimport styled from 'styled-components';\nimport BaseCharges from './charges/base-charge';\nimport DeliveryAddOns from './charges/delivery-add-ons';\nimport AdhocSection from './charges/adhoc';\nimport OrderInfo from './order-info';\nimport ForceDebriefSelector from './Selector';\nimport {\n Checkbox,\n Label,\n useApiHook,\n useAxios,\n} from '@bjsdistribution/dms-component-library';\nimport Escalation from './escalation';\nimport FDNotification from './notifications';\n\nimport { compareOrderDetailsStates, filterObject } from '../../../utils';\nimport { AdhocCharge, ApiResponse, OrdersType } from '../../../types';\nimport { notification } from 'antd';\nimport BaseChargeConfirmationModal from './BaseChargeConfirmationModal';\nimport { v4 as uuidv4 } from 'uuid';\n\ninterface IProps {\n callOrdersApi: any;\n callOrderStatusApi: any;\n callOrderAlertsApi: any;\n}\n\nfunction ForceDebriefModal(props: IProps) {\n const [customerInfo, setCustomerInfo] = useCustomerInfo();\n const [allCustomers, setAllCustomers] = useOrderCustomersList();\n const infoText = `${customerInfo?.recipient_name}, ${customerInfo?.postcode}`;\n const [, setCurrentAction] = useCurrentAction();\n\n const [activeTab, setActiveTab] = useActiveTab();\n const handleSwitchChange = (newValue: any) => setActiveTab(newValue);\n const [chargesState, setCharges] = useChargesState();\n const [inputValue, setInputValue] = useState<Record<string, string>>({}); // only for UI purpose\n const [staticData, setDebriefStaticData] = useState([]);\n const [orderDetails, setOrderDetails] = useOrderDetails();\n const [prevOrderDetails, setPrevOrderDetails] = usePrevOrderDetails();\n const [isEscalationEnabled, setIsEscalationEnabled] = useState<boolean>(true);\n const [newStatus, setNewStatus] = useNewStatus();\n const [cancellationReason, setCancellationReason] = useOrderCancelReason();\n const [orderHold, setOrderHold] = useOrderHoldReason();\n const [failureReason, setFailureReason] = useFailureReason();\n const [escalationCategory, setEscalationCategory] = useEscalationCategory();\n const [escalationLevel, setEscalationLevel] = useEscalationLevel();\n const [escalationReason, setEscalationReason] = useEscalationReason();\n const [, setRecallOrders] = useGlobalStateHitOrder();\n const [, setRecallAuditLog] = useGlobalStateHitAuditLog();\n const [, setGlobalEscData] = useGlobalEscData();\n\n const [showAmountConfirmModal, setShowAmountConfirmModal] = useState<boolean>(\n false\n );\n\n const [productdata] = useProductDetails();\n const sortedProductData = productdata?.sort((a: any, b: any) => {\n return a?.status === b?.status ? 0 : a?.status ? -1 : 1;\n });\n\n const isDeleted = Array.isArray(sortedProductData)\n ? sortedProductData?.filter(item => item?.status === true)\n : [];\n\n //customers API\n const [orderData] = useOrderDetails();\n const customersData = orderData;\n const id = customersData?.customer_id;\n\n //Customers list API call\n const {\n data: fetchCustomerData,\n loading: customerLoading,\n fetchData,\n } = useAxios<{\n data: ApiResponse[];\n }>({\n endpoint: `/v1/customer/list`,\n method: 'GET',\n pagination: { is_pagination: false },\n filters: [{ field: 'status', op: '=', value: '1' }],\n });\n\n useEffect(() => {\n if (fetchCustomerData && fetchCustomerData?.data) {\n const res = fetchCustomerData?.data;\n setAllCustomers(res);\n }\n }, [fetchCustomerData, customerLoading]);\n\n useEffect(() => {\n fetchData();\n }, []);\n\n // For API Call\n const [customerData, setCustomerData] = useCustomerDetails();\n const { data: fetchedData, loading, setShouldPerformAction } = useApiHook<{\n data: ApiResponse[];\n }>({\n endpoint: `customers/${id}`,\n method: 'GET',\n performAction: false,\n });\n\n useEffect(() => {\n if (id) {\n setShouldPerformAction(true);\n }\n }, [id]);\n\n useEffect(() => {\n if (fetchedData && fetchedData?.data) {\n const requiredData = fetchedData?.data;\n setCustomerData(requiredData);\n }\n }, [fetchedData, loading]);\n const selectedCustomer = allCustomers?.find(\n (customer: any) => customer?.id === customerData?.id\n );\n\n const adhocChargesFields: AdhocCharge[] = Array.from({ length: 9 }, () => ({\n id: uuidv4(),\n adhoc_charges_description: '',\n adhoc_charges: 0,\n }));\n\n const {\n fetchData: fetchAllDebriefStaticData,\n data: debriefStaticData,\n loading: debriefLoading,\n } = useAxios<{\n data: any;\n }>({\n endpoint: `/finance/debrief/getData/all/`,\n method: 'GET',\n });\n\n useEffect(() => {\n setCharges(prev => ({\n ...prev,\n adhoc_charges: adhocChargesFields,\n }));\n\n // call debrief static api for getting base charges type\n fetchAllDebriefStaticData();\n }, []);\n\n useEffect(() => {\n if (debriefStaticData?.data) {\n setDebriefStaticData(debriefStaticData?.data[0]);\n }\n }, [debriefLoading]);\n\n const { fetchData: callUpdateOrderAPI } = useAxios<{\n data: ApiResponse[];\n }>({\n endpoint: `/orders/update/`,\n method: 'PUT',\n });\n\n const { fetchData: callForceDebriefApi } = useAxios<{\n data: ApiResponse[];\n }>({\n endpoint: `/invoices/force-debrief/`,\n method: 'POST',\n });\n\n const { fetchData: createEscalation } = useAxios<{\n data: any;\n }>({\n endpoint: `/orders/escalations/create/`,\n method: 'POST',\n });\n\n const initialValues = () => {\n setOrderDetails(prevOrderDetails);\n setNewStatus('');\n setCancellationReason('');\n setOrderHold('');\n setFailureReason('');\n setEscalationCategory('');\n setEscalationLevel('');\n setEscalationReason('');\n setActiveTab('success');\n };\n\n const closeModal = () => {\n initialValues();\n setCurrentAction(undefined);\n };\n\n const isDifferent = () => {\n const keysToRemovefromOrders = [\n 'order_locked',\n 'order_communications',\n 'updated_at',\n 'updated_by',\n ];\n const filteredOrderDetails = filterObject(\n orderDetails,\n keysToRemovefromOrders\n );\n const filteredPrevOrderDetails = filterObject(\n prevOrderDetails,\n keysToRemovefromOrders\n );\n\n const orderDetailsSorted = JSON.stringify(filteredOrderDetails);\n const prevOrderDetailsSorted = JSON.stringify(filteredPrevOrderDetails);\n const isSame = orderDetailsSorted === prevOrderDetailsSorted;\n return !isSame;\n };\n\n const debriefchargesApi = async (finalPayload: any, failurePayload: any) => {\n try {\n const responseForceDebrief = (await callForceDebriefApi({\n payload: {\n debrief_data: finalPayload,\n ...(activeTab === 'failure'\n ? { failure_data: failurePayload }\n : { failure_data: {} }),\n },\n })) as {\n code: number | null;\n error?: string | null | undefined;\n [key: string]: any;\n };\n if (responseForceDebrief.code === 200) {\n notification.success({\n message: 'Success',\n description: `${responseForceDebrief?.message}`,\n });\n }\n } catch (err) {}\n };\n\n const ordersUpdateApi = async () => {\n const ordersApiPayload = compareOrderDetailsStates(\n prevOrderDetails,\n orderDetails\n );\n\n type ServiceKey =\n | 'assemble'\n | 'disassemble'\n | 'unpack_items'\n | 'collect_disposal'\n | 'take_packaging_away'\n | 'assembly_type';\n\n const serviceKeys: ServiceKey[] = [\n 'assemble',\n 'disassemble',\n 'unpack_items',\n 'collect_disposal',\n 'take_packaging_away',\n 'assembly_type',\n ];\n\n for (const key of serviceKeys) {\n if (key in ordersApiPayload) {\n (ordersApiPayload as Record<ServiceKey, any>)[key] =\n ordersApiPayload[key as keyof typeof ordersApiPayload];\n } else if (key in orderDetails) {\n (ordersApiPayload as Record<ServiceKey, any>)[key] =\n orderDetails[key as keyof OrdersType];\n }\n }\n\n if (\n ordersApiPayload?.assemble === false &&\n ordersApiPayload?.disassemble === false\n ) {\n ordersApiPayload.assembly_type = null;\n }\n\n try {\n let response = (await callUpdateOrderAPI({\n payload: [ordersApiPayload],\n })) as {\n code: number | null;\n error?: string | null | undefined;\n [key: string]: any;\n };\n if (response.code === 200 && response?.data?.length > 0) {\n notification.success({\n message: 'Success',\n description: `${response?.message}`,\n });\n setOrderDetails(response?.data[0]);\n setPrevOrderDetails(response?.data[0]);\n setCustomerInfo({\n recipient_name: response?.data[0]?.order_recipient?.recipient_name,\n postcode: response?.data[0]?.order_recipient?.postcode,\n });\n await setRecallOrders(true);\n }\n } catch (err) {\n setOrderDetails(prevOrderDetails);\n }\n };\n\n const escalationCreateApi = async (escalationPayload: any) => {\n try {\n const apiResponse = (await createEscalation({\n payload: escalationPayload,\n })) as {\n code: number | null;\n error?: string | null | undefined;\n [key: string]: any;\n };\n if (apiResponse?.code === 200) {\n notification.success({\n message: 'Success',\n description: `${apiResponse?.message}`,\n });\n\n setGlobalEscData(apiResponse?.data);\n }\n } catch (err) {}\n };\n\n const onSubmit = async () => {\n setRecallOrders(false);\n const ordersPayload = {\n consignment: orderDetails?.consignment,\n order_number: orderDetails?.order_number,\n customer_id: customerData?.id,\n customer_name: customerData?.customer_name,\n client_name: selectedCustomer?.client_name,\n recipient_name: orderDetails?.order_recipient?.recipient_name,\n order_id: orderDetails?.id,\n order_type: orderDetails?.order_type?.type,\n legacy_order_id: orderDetails?.gsit_order_id,\n postcode: orderDetails?.order_recipient?.postcode,\n ...(activeTab === 'failure' && { failure_new_status: newStatus }),\n };\n const adhocCharges = chargesState?.adhoc_charges\n ?.filter(\n item =>\n !(item.adhoc_charges === 0 && item.adhoc_charges_description === '')\n )\n .map(({ adhoc_charges_description, adhoc_charges }) => ({\n adhoc_charges_description,\n adhoc_charges,\n }));\n const chargesPayload: any = { ...chargesState };\n chargesPayload.adhoc_charges = adhocCharges;\n chargesPayload.debrief_status = activeTab;\n if (activeTab === 'success') {\n delete chargesPayload.new_order_status;\n }\n\n const failurePayload = {\n failure_reason_id: failureReason?.id,\n ...(newStatus === 'Cancelled' && {\n cancelled_reason_id: cancellationReason?.value,\n }),\n ...(newStatus === 'On Hold' && { hold_reason_id: orderHold?.value }),\n failure_order_status: newStatus,\n status: activeTab,\n };\n\n const finalPayload = {\n ...ordersPayload,\n status: activeTab,\n charges: [chargesPayload],\n ...(activeTab === 'failure' && { failureData: failurePayload }),\n }; // check adhoc charges if 0 and description is empty then\n\n // APPLY ALL VALIDATIONS HERE BEFORE CALLING ANY API\n\n if (activeTab === 'failure') {\n if (!failureReason?.id) {\n notification.error({\n message: 'Error',\n description: 'Failure reason is mandatory',\n });\n return;\n }\n\n if (newStatus?.length === 0) {\n notification.error({\n message: 'Error',\n description: 'New status is mandatory',\n });\n return;\n }\n\n if (newStatus === 'On Hold' && orderHold?.length === 0) {\n notification.error({\n message: 'Error',\n description: 'Hold reason is mandatory',\n });\n return;\n }\n\n if (newStatus === 'Cancelled' && cancellationReason?.length === 0) {\n notification.error({\n message: 'Error',\n description: 'Cancel reason is mandatory',\n });\n return;\n }\n }\n\n // Validate escalation fields early – before any API calls\n if (activeTab === 'failure' && isEscalationEnabled) {\n if (\n !escalationCategory?.value ||\n !escalationLevel?.value ||\n !escalationReason?.value\n ) {\n notification.error({\n message: 'Error',\n description:\n 'Escalation Category, Level and Reason are all mandatory',\n });\n return;\n }\n }\n\n if (isDifferent()) {\n await ordersUpdateApi();\n }\n\n if (activeTab === 'failure' && isEscalationEnabled) {\n const escalationPayload = [\n {\n order_id: orderDetails?.id,\n escalation_reason_id: escalationReason?.value,\n escalation_category_id: escalationCategory?.value,\n escalation_level_id: escalationLevel?.value,\n is_deleted: false,\n route_id: orderDetails?.order_routes?.route_id,\n },\n ];\n\n await escalationCreateApi(escalationPayload);\n }\n\n await debriefchargesApi(finalPayload, failurePayload);\n await setRecallAuditLog(true);\n // call status api and alerts api\n initialValues();\n await props?.callOrderStatusApi();\n await props?.callOrderAlertsApi();\n await props?.callOrdersApi();\n // closeModal();\n };\n\n const onForceDebrief = () => {\n if (chargesState?.base_charge > 200) {\n setShowAmountConfirmModal(true);\n } else {\n onSubmit();\n }\n };\n\n return (\n <OrderActionModal\n headerTitle=\"Order Debrief\"\n onCloseHeader={closeModal}\n infoText={infoText}\n onSubmit={onForceDebrief}\n submitBtnTitle={'Complete Order'}\n // isSubmitDisabled={true}\n maxWidth=\"95vw\"\n headerActions={\n <ForceDebriefSelector onSwitchChange={handleSwitchChange} />\n }\n >\n <MainContainer>\n <FDNotification />\n <ContentContainer>\n <OrderInfo />\n </ContentContainer>\n <ContentContainer>\n <Container>\n <Label\n label=\"Delivery Instructions\"\n htmlFor=\"deliveryInstruction\"\n />\n <Text>{orderDetails?.delivery_instructions || 'N/A'}</Text>\n </Container>\n\n <Container>\n <Label label=\"Other Instructions\" htmlFor=\"otherInstruction\" />\n <Text>{orderDetails?.other_instructions || 'N/A'}</Text>\n </Container>\n </ContentContainer>\n {/* ORDER-PRODUCT SECTION */}\n {isDeleted?.length > 0 && (\n <ProductDiv>\n <Container>\n {isDeleted?.map((item, index) => (\n <ProductContainer key={index}>\n <Status>{'*'}</Status>\n <Status>{item?.status_value || 'N/A'}</Status>\n <Status>{item?.order_product_type?.type || 'N/A'}</Status>\n <Status>{item?.sku || 'N/A'}</Status>\n <Status>{`Part 1 of 1`}</Status>\n <Status>{'Weight' + ':' + item?.weight || 'N/A'}</Status>\n <Status>{'Cube' + ':' + item?.cube || 'N/A'}</Status>\n </ProductContainer>\n ))}\n </Container>\n </ProductDiv>\n )}\n\n {/* CHARGES SECTION */}\n <ContentContainer>\n <ContainerInner>\n <BaseCharges\n inputValue={inputValue}\n setInputValue={setInputValue}\n staticData={staticData}\n />\n <DeliveryAddOns\n inputValue={inputValue}\n setInputValue={setInputValue}\n />\n </ContainerInner>\n <ContainerInner>\n <CollectionAddOns\n inputValue={inputValue}\n setInputValue={setInputValue}\n />\n <DisposalCharge\n inputValue={inputValue}\n setInputValue={setInputValue}\n />\n </ContainerInner>\n <OrderCharges inputValue={inputValue} setInputValue={setInputValue} />\n <AdhocSection />\n </ContentContainer>\n {activeTab === 'failure' && (\n <ContentContainer style={{ flexDirection: 'column', gap: '10px' }}>\n <div style={{ display: 'flex', gap: '10px' }}>\n Escalation\n <Checkbox\n checked={isEscalationEnabled}\n onChange={event => setIsEscalationEnabled(event.target.checked)}\n />\n </div>\n <Escalation />\n </ContentContainer>\n )}\n </MainContainer>\n {showAmountConfirmModal && (\n <BaseChargeConfirmationModal\n setConfirmationModal={setShowAmountConfirmModal}\n onProceed={onSubmit}\n />\n )}\n </OrderActionModal>\n );\n}\n\nconst Status = styled.span`\n font-family: 'Roboto', sans-serif;\n font-size: 14px;\n font-weight: 400;\n text-transform: capitalize;\n color: #3a3630;\n`;\n\nconst ProductContainer = styled.div`\n display: flex;\n flex-wrap: wrap;\n gap: 16px;\n`;\n\nconst MainContainer = styled.div`\n padding: 10px;\n display: flex;\n flex-direction: column;\n gap: 10px;\n`;\n\nconst ContainerInner = styled.div`\n display: flex;\n flex-direction: column;\n gap: 16px;\n`;\n\nconst Container = styled.div`\n width: 100%;\n`;\n\nconst Text = styled.div`\n color: #363a30;\n font-size: 14px;\n white-space: break-spaces;\n`;\n\nexport const ContentContainer = styled.div`\n display: flex;\n padding: 12px;\n flex-direction: row;\n align-items: flex-start;\n gap: 40px;\n flex: 1 0 0;\n border-radius: 15px;\n background: #f8fafc;\n width: 100%;\n white-space: nowrap;\n`;\n\nexport const ProductDiv = styled.div`\n display: flex;\n padding: 12px;\n flex-direction: row;\n align-items: flex-start;\n gap: 40px;\n flex: 1 0 0;\n border-radius: 15px;\n background: #f8fafc;\n width: 100%;\n white-space: nowrap;\n min-height: 60px;\n overflow: scroll;\n max-height: 150px;\n`;\nexport default React.memo(ForceDebriefModal);\n"],"names":["ForceDebriefModal","props","customerInfo","setCustomerInfo","useCustomerInfo","allCustomers","setAllCustomers","useOrderCustomersList","infoText","setCurrentAction","useCurrentAction","activeTab","setActiveTab","useActiveTab","handleSwitchChange","newValue","chargesState","setCharges","useChargesState","inputValue","setInputValue","useState","staticData","setDebriefStaticData","orderDetails","setOrderDetails","useOrderDetails","prevOrderDetails","setPrevOrderDetails","usePrevOrderDetails","isEscalationEnabled","setIsEscalationEnabled","newStatus","setNewStatus","useNewStatus","cancellationReason","setCancellationReason","useOrderCancelReason","orderHold","setOrderHold","useOrderHoldReason","failureReason","setFailureReason","useFailureReason","escalationCategory","setEscalationCategory","useEscalationCategory","escalationLevel","setEscalationLevel","useEscalationLevel","escalationReason","setEscalationReason","useEscalationReason","setRecallOrders","useGlobalStateHitOrder","setRecallAuditLog","useGlobalStateHitAuditLog","setGlobalEscData","useGlobalEscData","showAmountConfirmModal","setShowAmountConfirmModal","productdata","useProductDetails","sortedProductData","a","b","isDeleted","item","orderData","id","fetchCustomerData","customerLoading","fetchData","useAxios","useEffect","res","customerData","setCustomerData","useCustomerDetails","fetchedData","loading","setShouldPerformAction","useApiHook","requiredData","selectedCustomer","customer","adhocChargesFields","uuidv4","fetchAllDebriefStaticData","debriefStaticData","debriefLoading","prev","callUpdateOrderAPI","callForceDebriefApi","createEscalation","initialValues","closeModal","isDifferent","keysToRemovefromOrders","filteredOrderDetails","filterObject","filteredPrevOrderDetails","orderDetailsSorted","prevOrderDetailsSorted","debriefchargesApi","finalPayload","failurePayload","responseForceDebrief","notification","ordersUpdateApi","ordersApiPayload","compareOrderDetailsStates","serviceKeys","key","response","escalationCreateApi","escalationPayload","apiResponse","onSubmit","ordersPayload","adhocCharges","adhoc_charges_description","adhoc_charges","chargesPayload","jsxs","OrderActionModal","jsx","ForceDebriefSelector","MainContainer","FDNotification","ContentContainer","OrderInfo","Container","Label","Text","ProductDiv","index","ProductContainer","Status","ContainerInner","BaseCharges","DeliveryAddOns","CollectionAddOns","DisposalCharge","OrderCharges","AdhocSection","Checkbox","event","Escalation","BaseChargeConfirmationModal","styled","ForceDebriefModal$1","React"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ForceDebriefModal.js","sources":["../../../../../../src/components/order-view/order-actions/actions/force-debrief/ForceDebriefModal.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport OrderActionModal from '../../../../../common/modals/order-action-modal/OrderActionModal';\nimport {\n useActiveTab,\n useChargesState,\n useCurrentAction,\n useCustomerDetails,\n useCustomerInfo,\n useEscalationCategory,\n useEscalationLevel,\n useEscalationReason,\n useFailureReason,\n useGlobalEscData,\n useGlobalStateHitAuditLog,\n useGlobalStateHitOrder,\n useNewStatus,\n useOrderCancelReason,\n useOrderCustomersList,\n useOrderDetails,\n useOrderHoldReason,\n usePrevOrderDetails,\n useProductDetails,\n} from '../../../store';\nimport OrderCharges from './charges/order-charges';\nimport CollectionAddOns from './charges/collection-add-ons';\nimport DisposalCharge from './charges/disposal-charges';\nimport styled from 'styled-components';\nimport BaseCharges from './charges/base-charge';\nimport DeliveryAddOns from './charges/delivery-add-ons';\nimport AdhocSection from './charges/adhoc';\nimport { useClientPortal } from '../../../../store';\nimport OrderInfo from './order-info';\nimport ForceDebriefSelector from './Selector';\nimport {\n Checkbox,\n Label,\n toReverseDeliveryLabel,\n useApiHook,\n useAxios,\n} from '@bjsdistribution/dms-component-library';\nimport Escalation from './escalation';\nimport FDNotification from './notifications';\n\nimport { compareOrderDetailsStates, filterObject } from '../../../utils';\nimport { AdhocCharge, ApiResponse, OrdersType } from '../../../types';\nimport { notification } from 'antd';\nimport BaseChargeConfirmationModal from './BaseChargeConfirmationModal';\nimport { v4 as uuidv4 } from 'uuid';\n\ninterface IProps {\n callOrdersApi: any;\n callOrderStatusApi: any;\n callOrderAlertsApi: any;\n}\n\nfunction ForceDebriefModal(props: IProps) {\n const [isClientPortal] = useClientPortal();\n const [customerInfo, setCustomerInfo] = useCustomerInfo();\n const [allCustomers, setAllCustomers] = useOrderCustomersList();\n const infoText = `${customerInfo?.recipient_name}, ${customerInfo?.postcode}`;\n const [, setCurrentAction] = useCurrentAction();\n\n const [activeTab, setActiveTab] = useActiveTab();\n const handleSwitchChange = (newValue: any) => setActiveTab(newValue);\n const [chargesState, setCharges] = useChargesState();\n const [inputValue, setInputValue] = useState<Record<string, string>>({}); // only for UI purpose\n const [staticData, setDebriefStaticData] = useState([]);\n const [orderDetails, setOrderDetails] = useOrderDetails();\n const [prevOrderDetails, setPrevOrderDetails] = usePrevOrderDetails();\n const [isEscalationEnabled, setIsEscalationEnabled] = useState<boolean>(true);\n const [newStatus, setNewStatus] = useNewStatus();\n const [cancellationReason, setCancellationReason] = useOrderCancelReason();\n const [orderHold, setOrderHold] = useOrderHoldReason();\n const [failureReason, setFailureReason] = useFailureReason();\n const [escalationCategory, setEscalationCategory] = useEscalationCategory();\n const [escalationLevel, setEscalationLevel] = useEscalationLevel();\n const [escalationReason, setEscalationReason] = useEscalationReason();\n const [, setRecallOrders] = useGlobalStateHitOrder();\n const [, setRecallAuditLog] = useGlobalStateHitAuditLog();\n const [, setGlobalEscData] = useGlobalEscData();\n\n const [showAmountConfirmModal, setShowAmountConfirmModal] = useState<boolean>(\n false\n );\n\n const [productdata] = useProductDetails();\n const sortedProductData = productdata?.sort((a: any, b: any) => {\n return a?.status === b?.status ? 0 : a?.status ? -1 : 1;\n });\n\n const isDeleted = Array.isArray(sortedProductData)\n ? sortedProductData?.filter(item => item?.status === true)\n : [];\n\n //customers API\n const [orderData] = useOrderDetails();\n const customersData = orderData;\n const id = customersData?.customer_id;\n\n //Customers list API call\n const {\n data: fetchCustomerData,\n loading: customerLoading,\n fetchData,\n } = useAxios<{\n data: ApiResponse[];\n }>({\n endpoint: `/v1/customer/list`,\n method: 'GET',\n pagination: { is_pagination: false },\n filters: [{ field: 'status', op: '=', value: '1' }],\n });\n\n useEffect(() => {\n if (fetchCustomerData && fetchCustomerData?.data) {\n const res = fetchCustomerData?.data;\n setAllCustomers(res);\n }\n }, [fetchCustomerData, customerLoading]);\n\n useEffect(() => {\n fetchData();\n }, []);\n\n // For API Call\n const [customerData, setCustomerData] = useCustomerDetails();\n const { data: fetchedData, loading, setShouldPerformAction } = useApiHook<{\n data: ApiResponse[];\n }>({\n endpoint: `customers/${id}`,\n method: 'GET',\n performAction: false,\n });\n\n useEffect(() => {\n if (id) {\n setShouldPerformAction(true);\n }\n }, [id]);\n\n useEffect(() => {\n if (fetchedData && fetchedData?.data) {\n const requiredData = fetchedData?.data;\n setCustomerData(requiredData);\n }\n }, [fetchedData, loading]);\n const selectedCustomer = allCustomers?.find(\n (customer: any) => customer?.id === customerData?.id\n );\n\n const adhocChargesFields: AdhocCharge[] = Array.from({ length: 9 }, () => ({\n id: uuidv4(),\n adhoc_charges_description: '',\n adhoc_charges: 0,\n }));\n\n const {\n fetchData: fetchAllDebriefStaticData,\n data: debriefStaticData,\n loading: debriefLoading,\n } = useAxios<{\n data: any;\n }>({\n endpoint: `/finance/debrief/getData/all/`,\n method: 'GET',\n });\n\n useEffect(() => {\n setCharges(prev => ({\n ...prev,\n adhoc_charges: adhocChargesFields,\n }));\n\n // call debrief static api for getting base charges type\n fetchAllDebriefStaticData();\n }, []);\n\n useEffect(() => {\n if (debriefStaticData?.data) {\n setDebriefStaticData(debriefStaticData?.data[0]);\n }\n }, [debriefLoading]);\n\n const { fetchData: callUpdateOrderAPI } = useAxios<{\n data: ApiResponse[];\n }>({\n endpoint: `/orders/update/`,\n method: 'PUT',\n });\n\n const { fetchData: callForceDebriefApi } = useAxios<{\n data: ApiResponse[];\n }>({\n endpoint: `/invoices/force-debrief/`,\n method: 'POST',\n });\n\n const { fetchData: createEscalation } = useAxios<{\n data: any;\n }>({\n endpoint: `/orders/escalations/create/`,\n method: 'POST',\n });\n\n const initialValues = () => {\n setOrderDetails(prevOrderDetails);\n setNewStatus('');\n setCancellationReason('');\n setOrderHold('');\n setFailureReason('');\n setEscalationCategory('');\n setEscalationLevel('');\n setEscalationReason('');\n setActiveTab('success');\n };\n\n const closeModal = () => {\n initialValues();\n setCurrentAction(undefined);\n };\n\n const isDifferent = () => {\n const keysToRemovefromOrders = [\n 'order_locked',\n 'order_communications',\n 'updated_at',\n 'updated_by',\n ];\n const filteredOrderDetails = filterObject(\n orderDetails,\n keysToRemovefromOrders\n );\n const filteredPrevOrderDetails = filterObject(\n prevOrderDetails,\n keysToRemovefromOrders\n );\n\n const orderDetailsSorted = JSON.stringify(filteredOrderDetails);\n const prevOrderDetailsSorted = JSON.stringify(filteredPrevOrderDetails);\n const isSame = orderDetailsSorted === prevOrderDetailsSorted;\n return !isSame;\n };\n\n const debriefchargesApi = async (finalPayload: any, failurePayload: any) => {\n try {\n const responseForceDebrief = (await callForceDebriefApi({\n payload: {\n debrief_data: finalPayload,\n ...(activeTab === 'failure'\n ? { failure_data: failurePayload }\n : { failure_data: {} }),\n },\n })) as {\n code: number | null;\n error?: string | null | undefined;\n [key: string]: any;\n };\n if (responseForceDebrief.code === 200) {\n notification.success({\n message: 'Success',\n description: `${responseForceDebrief?.message}`,\n });\n }\n } catch (err) {}\n };\n\n const ordersUpdateApi = async () => {\n const ordersApiPayload = compareOrderDetailsStates(\n prevOrderDetails,\n orderDetails\n );\n\n type ServiceKey =\n | 'assemble'\n | 'disassemble'\n | 'unpack_items'\n | 'collect_disposal'\n | 'take_packaging_away'\n | 'assembly_type';\n\n const serviceKeys: ServiceKey[] = [\n 'assemble',\n 'disassemble',\n 'unpack_items',\n 'collect_disposal',\n 'take_packaging_away',\n 'assembly_type',\n ];\n\n for (const key of serviceKeys) {\n if (key in ordersApiPayload) {\n (ordersApiPayload as Record<ServiceKey, any>)[key] =\n ordersApiPayload[key as keyof typeof ordersApiPayload];\n } else if (key in orderDetails) {\n (ordersApiPayload as Record<ServiceKey, any>)[key] =\n orderDetails[key as keyof OrdersType];\n }\n }\n\n if (\n ordersApiPayload?.assemble === false &&\n ordersApiPayload?.disassemble === false\n ) {\n ordersApiPayload.assembly_type = null;\n }\n\n try {\n let response = (await callUpdateOrderAPI({\n payload: [ordersApiPayload],\n })) as {\n code: number | null;\n error?: string | null | undefined;\n [key: string]: any;\n };\n if (response.code === 200 && response?.data?.length > 0) {\n notification.success({\n message: 'Success',\n description: `${response?.message}`,\n });\n setOrderDetails(response?.data[0]);\n setPrevOrderDetails(response?.data[0]);\n setCustomerInfo({\n recipient_name: response?.data[0]?.order_recipient?.recipient_name,\n postcode: response?.data[0]?.order_recipient?.postcode,\n });\n await setRecallOrders(true);\n }\n } catch (err) {\n setOrderDetails(prevOrderDetails);\n }\n };\n\n const escalationCreateApi = async (escalationPayload: any) => {\n try {\n const apiResponse = (await createEscalation({\n payload: escalationPayload,\n })) as {\n code: number | null;\n error?: string | null | undefined;\n [key: string]: any;\n };\n if (apiResponse?.code === 200) {\n notification.success({\n message: 'Success',\n description: `${apiResponse?.message}`,\n });\n\n setGlobalEscData(apiResponse?.data);\n }\n } catch (err) {}\n };\n\n const onSubmit = async () => {\n setRecallOrders(false);\n const ordersPayload = {\n consignment: orderDetails?.consignment,\n order_number: orderDetails?.order_number,\n customer_id: customerData?.id,\n customer_name: customerData?.customer_name,\n client_name: selectedCustomer?.client_name,\n recipient_name: orderDetails?.order_recipient?.recipient_name,\n order_id: orderDetails?.id,\n order_type: orderDetails?.order_type?.type,\n legacy_order_id: orderDetails?.gsit_order_id,\n postcode: orderDetails?.order_recipient?.postcode,\n ...(activeTab === 'failure' && { failure_new_status: newStatus }),\n };\n const adhocCharges = chargesState?.adhoc_charges\n ?.filter(\n item =>\n !(item.adhoc_charges === 0 && item.adhoc_charges_description === '')\n )\n .map(({ adhoc_charges_description, adhoc_charges }) => ({\n adhoc_charges_description,\n adhoc_charges,\n }));\n const chargesPayload: any = { ...chargesState };\n chargesPayload.adhoc_charges = adhocCharges;\n chargesPayload.debrief_status = activeTab;\n if (activeTab === 'success') {\n delete chargesPayload.new_order_status;\n }\n\n const failurePayload = {\n failure_reason_id: failureReason?.id,\n ...(newStatus === 'Cancelled' && {\n cancelled_reason_id: cancellationReason?.value,\n }),\n ...(newStatus === 'On Hold' && { hold_reason_id: orderHold?.value }),\n failure_order_status: newStatus,\n status: activeTab,\n };\n\n const finalPayload = {\n ...ordersPayload,\n status: activeTab,\n charges: [chargesPayload],\n ...(activeTab === 'failure' && { failureData: failurePayload }),\n }; // check adhoc charges if 0 and description is empty then\n\n // APPLY ALL VALIDATIONS HERE BEFORE CALLING ANY API\n\n if (activeTab === 'failure') {\n if (!failureReason?.id) {\n notification.error({\n message: 'Error',\n description: 'Failure reason is mandatory',\n });\n return;\n }\n\n if (newStatus?.length === 0) {\n notification.error({\n message: 'Error',\n description: 'New status is mandatory',\n });\n return;\n }\n\n if (newStatus === 'On Hold' && orderHold?.length === 0) {\n notification.error({\n message: 'Error',\n description: 'Hold reason is mandatory',\n });\n return;\n }\n\n if (newStatus === 'Cancelled' && cancellationReason?.length === 0) {\n notification.error({\n message: 'Error',\n description: 'Cancel reason is mandatory',\n });\n return;\n }\n }\n\n // Validate escalation fields early – before any API calls\n if (activeTab === 'failure' && isEscalationEnabled) {\n if (\n !escalationCategory?.value ||\n !escalationLevel?.value ||\n !escalationReason?.value\n ) {\n notification.error({\n message: 'Error',\n description:\n 'Escalation Category, Level and Reason are all mandatory',\n });\n return;\n }\n }\n\n if (isDifferent()) {\n await ordersUpdateApi();\n }\n\n if (activeTab === 'failure' && isEscalationEnabled) {\n const escalationPayload = [\n {\n order_id: orderDetails?.id,\n escalation_reason_id: escalationReason?.value,\n escalation_category_id: escalationCategory?.value,\n escalation_level_id: escalationLevel?.value,\n is_deleted: false,\n route_id: orderDetails?.order_routes?.route_id,\n },\n ];\n\n await escalationCreateApi(escalationPayload);\n }\n\n await debriefchargesApi(finalPayload, failurePayload);\n await setRecallAuditLog(true);\n // call status api and alerts api\n initialValues();\n await props?.callOrderStatusApi();\n await props?.callOrderAlertsApi();\n await props?.callOrdersApi();\n // closeModal();\n };\n\n const onForceDebrief = () => {\n if (chargesState?.base_charge > 200) {\n setShowAmountConfirmModal(true);\n } else {\n onSubmit();\n }\n };\n\n return (\n <OrderActionModal\n headerTitle=\"Order Debrief\"\n onCloseHeader={closeModal}\n infoText={infoText}\n onSubmit={onForceDebrief}\n submitBtnTitle={'Complete Order'}\n // isSubmitDisabled={true}\n maxWidth=\"95vw\"\n headerActions={\n <ForceDebriefSelector onSwitchChange={handleSwitchChange} />\n }\n >\n <MainContainer>\n <FDNotification />\n <ContentContainer>\n <OrderInfo />\n </ContentContainer>\n <ContentContainer>\n <Container>\n <Label\n label=\"Delivery Instructions\"\n htmlFor=\"deliveryInstruction\"\n />\n <Text>{orderDetails?.delivery_instructions || 'N/A'}</Text>\n </Container>\n\n <Container>\n <Label label=\"Other Instructions\" htmlFor=\"otherInstruction\" />\n <Text>{orderDetails?.other_instructions || 'N/A'}</Text>\n </Container>\n </ContentContainer>\n {/* ORDER-PRODUCT SECTION */}\n {isDeleted?.length > 0 && (\n <ProductDiv>\n <Container>\n {isDeleted?.map((item, index) => (\n <ProductContainer key={index}>\n <Status>{'*'}</Status>\n <Status>{item?.status_value || 'N/A'}</Status>\n <Status>\n {(isClientPortal\n ? item?.order_product_type?.type\n : toReverseDeliveryLabel(item?.order_product_type?.type)) ||\n 'N/A'}\n </Status>\n <Status>{item?.sku || 'N/A'}</Status>\n <Status>{`Part 1 of 1`}</Status>\n <Status>{'Weight' + ':' + item?.weight || 'N/A'}</Status>\n <Status>{'Cube' + ':' + item?.cube || 'N/A'}</Status>\n </ProductContainer>\n ))}\n </Container>\n </ProductDiv>\n )}\n\n {/* CHARGES SECTION */}\n <ContentContainer>\n <ContainerInner>\n <BaseCharges\n inputValue={inputValue}\n setInputValue={setInputValue}\n staticData={staticData}\n />\n <DeliveryAddOns\n inputValue={inputValue}\n setInputValue={setInputValue}\n />\n </ContainerInner>\n <ContainerInner>\n <CollectionAddOns\n inputValue={inputValue}\n setInputValue={setInputValue}\n />\n <DisposalCharge\n inputValue={inputValue}\n setInputValue={setInputValue}\n />\n </ContainerInner>\n <OrderCharges inputValue={inputValue} setInputValue={setInputValue} />\n <AdhocSection />\n </ContentContainer>\n {activeTab === 'failure' && (\n <ContentContainer style={{ flexDirection: 'column', gap: '10px' }}>\n <div style={{ display: 'flex', gap: '10px' }}>\n Escalation\n <Checkbox\n checked={isEscalationEnabled}\n onChange={event => setIsEscalationEnabled(event.target.checked)}\n />\n </div>\n <Escalation />\n </ContentContainer>\n )}\n </MainContainer>\n {showAmountConfirmModal && (\n <BaseChargeConfirmationModal\n setConfirmationModal={setShowAmountConfirmModal}\n onProceed={onSubmit}\n />\n )}\n </OrderActionModal>\n );\n}\n\nconst Status = styled.span`\n font-family: 'Roboto', sans-serif;\n font-size: 14px;\n font-weight: 400;\n text-transform: capitalize;\n color: #3a3630;\n`;\n\nconst ProductContainer = styled.div`\n display: flex;\n flex-wrap: wrap;\n gap: 16px;\n`;\n\nconst MainContainer = styled.div`\n padding: 10px;\n display: flex;\n flex-direction: column;\n gap: 10px;\n`;\n\nconst ContainerInner = styled.div`\n display: flex;\n flex-direction: column;\n gap: 16px;\n`;\n\nconst Container = styled.div`\n width: 100%;\n`;\n\nconst Text = styled.div`\n color: #363a30;\n font-size: 14px;\n white-space: break-spaces;\n`;\n\nexport const ContentContainer = styled.div`\n display: flex;\n padding: 12px;\n flex-direction: row;\n align-items: flex-start;\n gap: 40px;\n flex: 1 0 0;\n border-radius: 15px;\n background: #f8fafc;\n width: 100%;\n white-space: nowrap;\n`;\n\nexport const ProductDiv = styled.div`\n display: flex;\n padding: 12px;\n flex-direction: row;\n align-items: flex-start;\n gap: 40px;\n flex: 1 0 0;\n border-radius: 15px;\n background: #f8fafc;\n width: 100%;\n white-space: nowrap;\n min-height: 60px;\n overflow: scroll;\n max-height: 150px;\n`;\nexport default React.memo(ForceDebriefModal);\n"],"names":["ForceDebriefModal","props","isClientPortal","useClientPortal","customerInfo","setCustomerInfo","useCustomerInfo","allCustomers","setAllCustomers","useOrderCustomersList","infoText","setCurrentAction","useCurrentAction","activeTab","setActiveTab","useActiveTab","handleSwitchChange","newValue","chargesState","setCharges","useChargesState","inputValue","setInputValue","useState","staticData","setDebriefStaticData","orderDetails","setOrderDetails","useOrderDetails","prevOrderDetails","setPrevOrderDetails","usePrevOrderDetails","isEscalationEnabled","setIsEscalationEnabled","newStatus","setNewStatus","useNewStatus","cancellationReason","setCancellationReason","useOrderCancelReason","orderHold","setOrderHold","useOrderHoldReason","failureReason","setFailureReason","useFailureReason","escalationCategory","setEscalationCategory","useEscalationCategory","escalationLevel","setEscalationLevel","useEscalationLevel","escalationReason","setEscalationReason","useEscalationReason","setRecallOrders","useGlobalStateHitOrder","setRecallAuditLog","useGlobalStateHitAuditLog","setGlobalEscData","useGlobalEscData","showAmountConfirmModal","setShowAmountConfirmModal","productdata","useProductDetails","sortedProductData","a","b","isDeleted","item","orderData","id","fetchCustomerData","customerLoading","fetchData","useAxios","useEffect","res","customerData","setCustomerData","useCustomerDetails","fetchedData","loading","setShouldPerformAction","useApiHook","requiredData","selectedCustomer","customer","adhocChargesFields","uuidv4","fetchAllDebriefStaticData","debriefStaticData","debriefLoading","prev","callUpdateOrderAPI","callForceDebriefApi","createEscalation","initialValues","closeModal","isDifferent","keysToRemovefromOrders","filteredOrderDetails","filterObject","filteredPrevOrderDetails","orderDetailsSorted","prevOrderDetailsSorted","debriefchargesApi","finalPayload","failurePayload","responseForceDebrief","notification","ordersUpdateApi","ordersApiPayload","compareOrderDetailsStates","serviceKeys","key","response","escalationCreateApi","escalationPayload","apiResponse","onSubmit","ordersPayload","adhocCharges","adhoc_charges_description","adhoc_charges","chargesPayload","jsxs","OrderActionModal","jsx","ForceDebriefSelector","MainContainer","FDNotification","ContentContainer","OrderInfo","Container","Label","Text","ProductDiv","index","ProductContainer","Status","toReverseDeliveryLabel","ContainerInner","BaseCharges","DeliveryAddOns","CollectionAddOns","DisposalCharge","OrderCharges","AdhocSection","Checkbox","event","Escalation","BaseChargeConfirmationModal","styled","ForceDebriefModal$1","React"],"mappings":"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"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { MainContainer as u, Title as d, Container as b, FieldRow as h, Label as m, CurrencySymbol as p, Input as
|
|
3
|
-
import { getBaseUrlSymbol as
|
|
4
|
-
import { useChargesState as
|
|
1
|
+
import { jsxs as t, jsx as r } from "react/jsx-runtime";
|
|
2
|
+
import { MainContainer as u, Title as d, Container as b, FieldRow as h, Label as m, CurrencySymbol as p, Input as v } from "../../styles.js";
|
|
3
|
+
import { getBaseUrlSymbol as g, handleKeyDownDebrief as y } from "../../../../../utils.js";
|
|
4
|
+
import { useChargesState as C } from "../../../../../store.js";
|
|
5
5
|
const f = [
|
|
6
6
|
{ label: "Repackage", value: "re_package" },
|
|
7
7
|
{ label: "Disassemble", value: "disassemble" },
|
|
8
8
|
{ label: "QC", value: "collection_qc" },
|
|
9
9
|
{ label: "Return to Client", value: "return_to_client" }
|
|
10
10
|
];
|
|
11
|
-
function
|
|
12
|
-
const [, s] =
|
|
11
|
+
function _(o) {
|
|
12
|
+
const [, s] = C(), i = g(), c = (e, l) => {
|
|
13
13
|
o?.setInputValue((n) => ({
|
|
14
14
|
...n,
|
|
15
15
|
[e]: l
|
|
@@ -23,14 +23,14 @@ function w(o) {
|
|
|
23
23
|
[e]: a
|
|
24
24
|
})));
|
|
25
25
|
};
|
|
26
|
-
return /* @__PURE__ */
|
|
27
|
-
/* @__PURE__ */
|
|
28
|
-
/* @__PURE__ */
|
|
29
|
-
/* @__PURE__ */
|
|
30
|
-
/* @__PURE__ */
|
|
31
|
-
/* @__PURE__ */
|
|
32
|
-
/* @__PURE__ */
|
|
33
|
-
|
|
26
|
+
return /* @__PURE__ */ t(u, { children: [
|
|
27
|
+
/* @__PURE__ */ r(d, { children: "Reverse Delivery Add-Ons" }),
|
|
28
|
+
/* @__PURE__ */ r(b, { children: f.map((e) => /* @__PURE__ */ t(h, { children: [
|
|
29
|
+
/* @__PURE__ */ r(m, { children: e.label }),
|
|
30
|
+
/* @__PURE__ */ t("div", { style: { display: "flex", gap: "3px", alignItems: "center" }, children: [
|
|
31
|
+
/* @__PURE__ */ r(p, { children: i }),
|
|
32
|
+
/* @__PURE__ */ r(
|
|
33
|
+
v,
|
|
34
34
|
{
|
|
35
35
|
min: 0,
|
|
36
36
|
max: 1e4,
|
|
@@ -39,7 +39,7 @@ function w(o) {
|
|
|
39
39
|
onWheel: (l) => l.target.blur(),
|
|
40
40
|
value: o?.inputValue[e.value] ?? "",
|
|
41
41
|
onChange: (l) => c(e.value, l.target.value),
|
|
42
|
-
onKeyDown:
|
|
42
|
+
onKeyDown: y
|
|
43
43
|
}
|
|
44
44
|
)
|
|
45
45
|
] })
|
|
@@ -47,6 +47,6 @@ function w(o) {
|
|
|
47
47
|
] });
|
|
48
48
|
}
|
|
49
49
|
export {
|
|
50
|
-
|
|
50
|
+
_ as default
|
|
51
51
|
};
|
|
52
52
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../../../src/components/order-view/order-actions/actions/force-debrief/charges/collection-add-ons/index.tsx"],"sourcesContent":["import React from 'react';\nimport {\n Container,\n CurrencySymbol,\n FieldRow,\n Input,\n Label,\n MainContainer,\n Title,\n} from '../../styles';\nimport { getBaseUrlSymbol, handleKeyDownDebrief } from '../../../../../utils';\nimport { useChargesState } from '../../../../../store';\n\nconst fields = [\n { label: 'Repackage', value: 're_package' },\n { label: 'Disassemble', value: 'disassemble' },\n { label: 'QC', value: 'collection_qc' },\n { label: 'Return to Client', value: 'return_to_client' },\n];\n\ninterface IProps {\n inputValue: Record<string, string>;\n setInputValue: React.Dispatch<React.SetStateAction<Record<string, string>>>;\n}\n\nfunction CollectionAddOns(props: IProps) {\n const [, setCharges] = useChargesState();\n const baseUrlSymbol = getBaseUrlSymbol();\n\n const handleChange = (field: string, value: string) => {\n props?.setInputValue((prev: any) => ({\n ...prev,\n [field]: value,\n }));\n let val = parseFloat(value);\n if (isNaN(val)) {\n setCharges(prev => ({\n ...prev,\n [field]: 0,\n }));\n } else {\n val = val >= 0 ? val : 0;\n setCharges(prev => ({\n ...prev,\n [field]: val,\n }));\n }\n };\n\n return (\n <MainContainer>\n <Title>
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../../../src/components/order-view/order-actions/actions/force-debrief/charges/collection-add-ons/index.tsx"],"sourcesContent":["import React from 'react';\nimport {\n Container,\n CurrencySymbol,\n FieldRow,\n Input,\n Label,\n MainContainer,\n Title,\n} from '../../styles';\nimport { getBaseUrlSymbol, handleKeyDownDebrief } from '../../../../../utils';\nimport { useChargesState } from '../../../../../store';\n\nconst fields = [\n { label: 'Repackage', value: 're_package' },\n { label: 'Disassemble', value: 'disassemble' },\n { label: 'QC', value: 'collection_qc' },\n { label: 'Return to Client', value: 'return_to_client' },\n];\n\ninterface IProps {\n inputValue: Record<string, string>;\n setInputValue: React.Dispatch<React.SetStateAction<Record<string, string>>>;\n}\n\nfunction CollectionAddOns(props: IProps) {\n const [, setCharges] = useChargesState();\n const baseUrlSymbol = getBaseUrlSymbol();\n\n const handleChange = (field: string, value: string) => {\n props?.setInputValue((prev: any) => ({\n ...prev,\n [field]: value,\n }));\n let val = parseFloat(value);\n if (isNaN(val)) {\n setCharges(prev => ({\n ...prev,\n [field]: 0,\n }));\n } else {\n val = val >= 0 ? val : 0;\n setCharges(prev => ({\n ...prev,\n [field]: val,\n }));\n }\n };\n\n return (\n <MainContainer>\n <Title>Reverse Delivery Add-Ons</Title>\n <Container>\n {fields.map((item: any) => (\n <FieldRow key={item.value}>\n <Label>{item.label}</Label>\n <div style={{ display: 'flex', gap: '3px', alignItems: 'center' }}>\n <CurrencySymbol>{baseUrlSymbol}</CurrencySymbol>\n <Input\n min={0}\n max={10000}\n type=\"number\"\n placeholder=\"0.00\"\n onWheel={(e: any) => e.target.blur()}\n value={props?.inputValue[item.value] ?? ''}\n onChange={(e: any) => handleChange(item.value, e.target.value)}\n onKeyDown={handleKeyDownDebrief}\n />\n </div>\n </FieldRow>\n ))}\n </Container>\n </MainContainer>\n );\n}\n\nexport default CollectionAddOns;\n"],"names":["fields","CollectionAddOns","props","setCharges","useChargesState","baseUrlSymbol","getBaseUrlSymbol","handleChange","field","value","prev","val","MainContainer","jsx","Title","Container","item","FieldRow","Label","jsxs","CurrencySymbol","Input","e","handleKeyDownDebrief"],"mappings":";;;;AAaA,MAAMA,IAAS;AAAA,EACb,EAAE,OAAO,aAAa,OAAO,aAAA;AAAA,EAC7B,EAAE,OAAO,eAAe,OAAO,cAAA;AAAA,EAC/B,EAAE,OAAO,MAAM,OAAO,gBAAA;AAAA,EACtB,EAAE,OAAO,oBAAoB,OAAO,mBAAA;AACtC;AAOA,SAASC,EAAiBC,GAAe;AACvC,QAAM,CAAA,EAAGC,CAAU,IAAIC,EAAA,GACjBC,IAAgBC,EAAA,GAEhBC,IAAe,CAACC,GAAeC,MAAkB;AACrD,IAAAP,GAAO,cAAc,CAACQ,OAAe;AAAA,MACnC,GAAGA;AAAA,MACH,CAACF,CAAK,GAAGC;AAAA,IAAA,EACT;AACF,QAAIE,IAAM,WAAWF,CAAK;AAC1B,IAAI,MAAME,CAAG,IACXR,EAAW,CAAAO,OAAS;AAAA,MAClB,GAAGA;AAAA,MACH,CAACF,CAAK,GAAG;AAAA,IAAA,EACT,KAEFG,IAAMA,KAAO,IAAIA,IAAM,GACvBR,EAAW,CAAAO,OAAS;AAAA,MAClB,GAAGA;AAAA,MACH,CAACF,CAAK,GAAGG;AAAA,IAAA,EACT;AAAA,EAEN;AAEA,2BACGC,GAAA,EACC,UAAA;AAAA,IAAA,gBAAAC,EAACC,KAAM,UAAA,2BAAA,CAAwB;AAAA,sBAC9BC,GAAA,EACE,UAAAf,EAAO,IAAI,CAACgB,wBACVC,GAAA,EACC,UAAA;AAAA,MAAA,gBAAAJ,EAACK,GAAA,EAAO,YAAK,MAAA,CAAM;AAAA,MACnB,gBAAAC,EAAC,OAAA,EAAI,OAAO,EAAE,SAAS,QAAQ,KAAK,OAAO,YAAY,SAAA,GACrD,UAAA;AAAA,QAAA,gBAAAN,EAACO,KAAgB,UAAAf,EAAA,CAAc;AAAA,QAC/B,gBAAAQ;AAAA,UAACQ;AAAA,UAAA;AAAA,YACC,KAAK;AAAA,YACL,KAAK;AAAA,YACL,MAAK;AAAA,YACL,aAAY;AAAA,YACZ,SAAS,CAACC,MAAWA,EAAE,OAAO,KAAA;AAAA,YAC9B,OAAOpB,GAAO,WAAWc,EAAK,KAAK,KAAK;AAAA,YACxC,UAAU,CAACM,MAAWf,EAAaS,EAAK,OAAOM,EAAE,OAAO,KAAK;AAAA,YAC7D,WAAWC;AAAA,UAAA;AAAA,QAAA;AAAA,MACb,EAAA,CACF;AAAA,IAAA,KAdaP,EAAK,KAepB,CACD,EAAA,CACH;AAAA,EAAA,GACF;AAEJ;"}
|
|
@@ -1,45 +1,46 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { Label as
|
|
3
|
-
import { useEffect as
|
|
4
|
-
import
|
|
5
|
-
import { useEscalationReason as
|
|
6
|
-
|
|
1
|
+
import { jsxs as m, jsx as i } from "react/jsx-runtime";
|
|
2
|
+
import { toReverseDeliveryLabel as f, Label as R, SelectDropdown as D, dropdownStyles as b } from "@bjsdistribution/dms-component-library";
|
|
3
|
+
import { useEffect as h } from "react";
|
|
4
|
+
import g from "styled-components";
|
|
5
|
+
import { useEscalationReason as C, useOrderStaticData as S, useEscalationCategory as v, useFailureReason as y, useIsFailureReasonChanged as E } from "../../../../store.js";
|
|
6
|
+
import { useClientPortal as I } from "../../../../../store.js";
|
|
7
|
+
function T() {
|
|
7
8
|
const [
|
|
8
9
|
l,
|
|
9
10
|
s
|
|
10
|
-
] =
|
|
11
|
+
] = C(), [t] = S(), [p] = I(), [n] = v(), [c] = y(), [
|
|
11
12
|
r,
|
|
12
|
-
|
|
13
|
-
] =
|
|
14
|
-
(e) => e?.escalation_type_id ===
|
|
13
|
+
d
|
|
14
|
+
] = E(), x = n?.value, a = t?.escalation_reasons?.filter(
|
|
15
|
+
(e) => e?.escalation_type_id === x
|
|
15
16
|
)?.map((e) => {
|
|
16
|
-
const o =
|
|
17
|
-
(
|
|
17
|
+
const o = t?.order_escalation_reasons?.find(
|
|
18
|
+
(u) => u?.id === e?.order_reason_id
|
|
18
19
|
);
|
|
19
20
|
if (o !== void 0)
|
|
20
21
|
return {
|
|
21
|
-
label: o?.reason,
|
|
22
|
+
label: p ? o?.reason : f(o?.reason),
|
|
22
23
|
value: o?.id
|
|
23
24
|
};
|
|
24
25
|
})?.filter(
|
|
25
26
|
(e) => e !== void 0
|
|
26
27
|
);
|
|
27
|
-
return
|
|
28
|
+
return h(() => {
|
|
28
29
|
if (r && a?.length > 0) {
|
|
29
30
|
const e = a?.find(
|
|
30
|
-
(o) => o?.label ===
|
|
31
|
+
(o) => o?.label === c?.label
|
|
31
32
|
);
|
|
32
|
-
s(e),
|
|
33
|
+
s(e), d(!1);
|
|
33
34
|
}
|
|
34
35
|
!r && a?.length > 0 && s(a[0]);
|
|
35
|
-
}, [
|
|
36
|
-
/* @__PURE__ */ i(
|
|
36
|
+
}, [n]), /* @__PURE__ */ m(_, { children: [
|
|
37
|
+
/* @__PURE__ */ i(R, { label: "Escalation Reason" }),
|
|
37
38
|
/* @__PURE__ */ i(
|
|
38
|
-
|
|
39
|
+
D,
|
|
39
40
|
{
|
|
40
41
|
options: a || [],
|
|
41
42
|
styles: {
|
|
42
|
-
...
|
|
43
|
+
...b,
|
|
43
44
|
control: (e, o) => ({
|
|
44
45
|
...e,
|
|
45
46
|
border: "1px solid #D0D5DD",
|
|
@@ -74,13 +75,13 @@ function j() {
|
|
|
74
75
|
)
|
|
75
76
|
] });
|
|
76
77
|
}
|
|
77
|
-
const
|
|
78
|
+
const _ = g.div`
|
|
78
79
|
display: flex;
|
|
79
80
|
flex-direction: column;
|
|
80
81
|
gap: 8px;
|
|
81
82
|
flex: 1;
|
|
82
83
|
`;
|
|
83
84
|
export {
|
|
84
|
-
|
|
85
|
+
T as default
|
|
85
86
|
};
|
|
86
87
|
//# sourceMappingURL=EscalationReason.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EscalationReason.js","sources":["../../../../../../../src/components/order-view/order-actions/actions/force-debrief/escalation/EscalationReason.tsx"],"sourcesContent":["import {\n Label,\n SelectDropdown,\n dropdownStyles,\n} from '@bjsdistribution/dms-component-library';\nimport React, { useEffect } from 'react';\nimport styled from 'styled-components';\n\nimport {\n useEscalationCategory,\n useEscalationReason,\n useFailureReason,\n useIsFailureReasonChanged,\n useOrderStaticData,\n} from '../../../../store';\n\nfunction EscalationReason() {\n const [\n escalationReasonState,\n setEscalationReasonState,\n ] = useEscalationReason();\n const [orderStaticData] = useOrderStaticData();\n const [escalationCategory] = useEscalationCategory();\n const [failureReason] = useFailureReason();\n const [\n isFailureReasonChanged,\n setIsFailureReasonChanged,\n ] = useIsFailureReasonChanged();\n\n // escalationCategory.value is now escalation_type.id directly (same as orders force-debrief)\n const escalationTypeId = escalationCategory?.value;\n\n const escalationReasons = orderStaticData?.escalation_reasons?.filter(\n (x: any) => x?.escalation_type_id === escalationTypeId\n );\n\n const escalationReasonsOptions = escalationReasons?.map((item: any) => {\n const matchedItem = orderStaticData?.order_escalation_reasons?.find(\n (x: any) => x?.id === item?.order_reason_id\n );\n if (matchedItem !== undefined) {\n return {\n label: matchedItem?.reason,\n value: matchedItem?.id,\n };\n } else {\n return;\n }\n });\n const filteredEscReasonOptions = escalationReasonsOptions?.filter(\n (option: any) => option !== undefined\n );\n\n useEffect(() => {\n if (isFailureReasonChanged && filteredEscReasonOptions?.length > 0) {\n // ids of both esc reason options and failure reason not matched but their labels matched\n const reason = filteredEscReasonOptions?.find(\n (option: any) => option?.label === failureReason?.label\n );\n setEscalationReasonState(reason);\n setIsFailureReasonChanged(false);\n }\n if (!isFailureReasonChanged && filteredEscReasonOptions?.length > 0) {\n setEscalationReasonState(filteredEscReasonOptions[0]);\n }\n }, [escalationCategory]);\n\n return (\n <Container>\n <Label label=\"Escalation Reason\" />\n <SelectDropdown\n options={filteredEscReasonOptions || []}\n styles={{\n ...dropdownStyles,\n control: (styles, state) => ({\n ...styles,\n border: '1px solid #D0D5DD',\n cursor: 'pointer',\n borderRadius: `${\n state.selectProps.menuIsOpen ? '0px 0px 6px 6px' : '6px'\n }`,\n boxShadow: '0px 3px 22px #00000014',\n minHeight: '40px',\n '&:hover': {\n borderColor: '#D0D5DD',\n boxShadow: '0px 3px 22px #00000014',\n },\n }),\n menu: styles => ({\n ...styles,\n marginBottom: '0px',\n borderRadius: '6px 6px 0px 0px',\n boxShadow: '0px 3px 22px #00000014',\n border: '1px solid #D0D5DD',\n borderBottom: '0px',\n }),\n dropdownIndicator: (styles, state) => ({\n ...styles,\n transition: 'all 0.3s ease-in-out',\n transform: state.selectProps.menuIsOpen ? 'rotate(180deg)' : 'null',\n }),\n }}\n placeholder=\"Select Reason\"\n menuPlacement=\"top\"\n value={escalationReasonState}\n onChange={selectedOption => setEscalationReasonState(selectedOption)}\n />\n </Container>\n );\n}\n\nconst Container = styled.div`\n display: flex;\n flex-direction: column;\n gap: 8px;\n flex: 1;\n`;\n\nexport default EscalationReason;\n"],"names":["EscalationReason","escalationReasonState","setEscalationReasonState","useEscalationReason","orderStaticData","useOrderStaticData","escalationCategory","useEscalationCategory","failureReason","useFailureReason","isFailureReasonChanged","setIsFailureReasonChanged","useIsFailureReasonChanged","escalationTypeId","filteredEscReasonOptions","x","item","matchedItem","option","useEffect","reason","Container","jsx","Label","SelectDropdown","dropdownStyles","styles","state","selectedOption","styled"],"mappings":"
|
|
1
|
+
{"version":3,"file":"EscalationReason.js","sources":["../../../../../../../src/components/order-view/order-actions/actions/force-debrief/escalation/EscalationReason.tsx"],"sourcesContent":["import {\n Label,\n SelectDropdown,\n dropdownStyles,\n toReverseDeliveryLabel,\n} from '@bjsdistribution/dms-component-library';\nimport React, { useEffect } from 'react';\nimport styled from 'styled-components';\n\nimport {\n useEscalationCategory,\n useEscalationReason,\n useFailureReason,\n useIsFailureReasonChanged,\n useOrderStaticData,\n} from '../../../../store';\nimport { useClientPortal } from '../../../../../store';\n\nfunction EscalationReason() {\n const [\n escalationReasonState,\n setEscalationReasonState,\n ] = useEscalationReason();\n const [orderStaticData] = useOrderStaticData();\n const [isClientPortal] = useClientPortal();\n const [escalationCategory] = useEscalationCategory();\n const [failureReason] = useFailureReason();\n const [\n isFailureReasonChanged,\n setIsFailureReasonChanged,\n ] = useIsFailureReasonChanged();\n\n // escalationCategory.value is now escalation_type.id directly (same as orders force-debrief)\n const escalationTypeId = escalationCategory?.value;\n\n const escalationReasons = orderStaticData?.escalation_reasons?.filter(\n (x: any) => x?.escalation_type_id === escalationTypeId\n );\n\n const escalationReasonsOptions = escalationReasons?.map((item: any) => {\n const matchedItem = orderStaticData?.order_escalation_reasons?.find(\n (x: any) => x?.id === item?.order_reason_id\n );\n if (matchedItem !== undefined) {\n return {\n label: isClientPortal\n ? matchedItem?.reason\n : toReverseDeliveryLabel(matchedItem?.reason),\n value: matchedItem?.id,\n };\n } else {\n return;\n }\n });\n const filteredEscReasonOptions = escalationReasonsOptions?.filter(\n (option: any) => option !== undefined\n );\n\n useEffect(() => {\n if (isFailureReasonChanged && filteredEscReasonOptions?.length > 0) {\n // ids of both esc reason options and failure reason not matched but their labels matched\n const reason = filteredEscReasonOptions?.find(\n (option: any) => option?.label === failureReason?.label\n );\n setEscalationReasonState(reason);\n setIsFailureReasonChanged(false);\n }\n if (!isFailureReasonChanged && filteredEscReasonOptions?.length > 0) {\n setEscalationReasonState(filteredEscReasonOptions[0]);\n }\n }, [escalationCategory]);\n\n return (\n <Container>\n <Label label=\"Escalation Reason\" />\n <SelectDropdown\n options={filteredEscReasonOptions || []}\n styles={{\n ...dropdownStyles,\n control: (styles, state) => ({\n ...styles,\n border: '1px solid #D0D5DD',\n cursor: 'pointer',\n borderRadius: `${\n state.selectProps.menuIsOpen ? '0px 0px 6px 6px' : '6px'\n }`,\n boxShadow: '0px 3px 22px #00000014',\n minHeight: '40px',\n '&:hover': {\n borderColor: '#D0D5DD',\n boxShadow: '0px 3px 22px #00000014',\n },\n }),\n menu: styles => ({\n ...styles,\n marginBottom: '0px',\n borderRadius: '6px 6px 0px 0px',\n boxShadow: '0px 3px 22px #00000014',\n border: '1px solid #D0D5DD',\n borderBottom: '0px',\n }),\n dropdownIndicator: (styles, state) => ({\n ...styles,\n transition: 'all 0.3s ease-in-out',\n transform: state.selectProps.menuIsOpen ? 'rotate(180deg)' : 'null',\n }),\n }}\n placeholder=\"Select Reason\"\n menuPlacement=\"top\"\n value={escalationReasonState}\n onChange={selectedOption => setEscalationReasonState(selectedOption)}\n />\n </Container>\n );\n}\n\nconst Container = styled.div`\n display: flex;\n flex-direction: column;\n gap: 8px;\n flex: 1;\n`;\n\nexport default EscalationReason;\n"],"names":["EscalationReason","escalationReasonState","setEscalationReasonState","useEscalationReason","orderStaticData","useOrderStaticData","isClientPortal","useClientPortal","escalationCategory","useEscalationCategory","failureReason","useFailureReason","isFailureReasonChanged","setIsFailureReasonChanged","useIsFailureReasonChanged","escalationTypeId","filteredEscReasonOptions","x","item","matchedItem","toReverseDeliveryLabel","option","useEffect","reason","Container","jsx","Label","SelectDropdown","dropdownStyles","styles","state","selectedOption","styled"],"mappings":";;;;;;AAkBA,SAASA,IAAmB;AAC1B,QAAM;AAAA,IACJC;AAAA,IACAC;AAAA,EAAA,IACEC,EAAA,GACE,CAACC,CAAe,IAAIC,EAAA,GACpB,CAACC,CAAc,IAAIC,EAAA,GACnB,CAACC,CAAkB,IAAIC,EAAA,GACvB,CAACC,CAAa,IAAIC,EAAA,GAClB;AAAA,IACJC;AAAA,IACAC;AAAA,EAAA,IACEC,EAAA,GAGEC,IAAmBP,GAAoB,OAqBvCQ,IAnBoBZ,GAAiB,oBAAoB;AAAA,IAC7D,CAACa,MAAWA,GAAG,uBAAuBF;AAAA,EAAA,GAGY,IAAI,CAACG,MAAc;AACrE,UAAMC,IAAcf,GAAiB,0BAA0B;AAAA,MAC7D,CAACa,MAAWA,GAAG,OAAOC,GAAM;AAAA,IAAA;AAE9B,QAAIC,MAAgB;AAClB,aAAO;AAAA,QACL,OAAOb,IACHa,GAAa,SACbC,EAAuBD,GAAa,MAAM;AAAA,QAC9C,OAAOA,GAAa;AAAA,MAAA;AAAA,EAK1B,CAAC,GAC0D;AAAA,IACzD,CAACE,MAAgBA,MAAW;AAAA,EAAA;AAG9B,SAAAC,EAAU,MAAM;AACd,QAAIV,KAA0BI,GAA0B,SAAS,GAAG;AAElE,YAAMO,IAASP,GAA0B;AAAA,QACvC,CAACK,MAAgBA,GAAQ,UAAUX,GAAe;AAAA,MAAA;AAEpD,MAAAR,EAAyBqB,CAAM,GAC/BV,EAA0B,EAAK;AAAA,IACjC;AACA,IAAI,CAACD,KAA0BI,GAA0B,SAAS,KAChEd,EAAyBc,EAAyB,CAAC,CAAC;AAAA,EAExD,GAAG,CAACR,CAAkB,CAAC,qBAGpBgB,GAAA,EACC,UAAA;AAAA,IAAA,gBAAAC,EAACC,GAAA,EAAM,OAAM,oBAAA,CAAoB;AAAA,IACjC,gBAAAD;AAAA,MAACE;AAAA,MAAA;AAAA,QACC,SAASX,KAA4B,CAAA;AAAA,QACrC,QAAQ;AAAA,UACN,GAAGY;AAAA,UACH,SAAS,CAACC,GAAQC,OAAW;AAAA,YAC3B,GAAGD;AAAA,YACH,QAAQ;AAAA,YACR,QAAQ;AAAA,YACR,cAAc,GACZC,EAAM,YAAY,aAAa,oBAAoB,KACrD;AAAA,YACA,WAAW;AAAA,YACX,WAAW;AAAA,YACX,WAAW;AAAA,cACT,aAAa;AAAA,cACb,WAAW;AAAA,YAAA;AAAA,UACb;AAAA,UAEF,MAAM,CAAAD,OAAW;AAAA,YACf,GAAGA;AAAA,YACH,cAAc;AAAA,YACd,cAAc;AAAA,YACd,WAAW;AAAA,YACX,QAAQ;AAAA,YACR,cAAc;AAAA,UAAA;AAAA,UAEhB,mBAAmB,CAACA,GAAQC,OAAW;AAAA,YACrC,GAAGD;AAAA,YACH,YAAY;AAAA,YACZ,WAAWC,EAAM,YAAY,aAAa,mBAAmB;AAAA,UAAA;AAAA,QAC/D;AAAA,QAEF,aAAY;AAAA,QACZ,eAAc;AAAA,QACd,OAAO7B;AAAA,QACP,UAAU,CAAA8B,MAAkB7B,EAAyB6B,CAAc;AAAA,MAAA;AAAA,IAAA;AAAA,EACrE,GACF;AAEJ;AAEA,MAAMP,IAAYQ,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;"}
|
package/dist/components/order-view/order-actions/actions/force-debrief/order-info/RadioButtons.js
CHANGED
|
@@ -1,98 +1,102 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { RadioButtonGroup as n } from "@bjsdistribution/dms-component-library";
|
|
3
|
-
import
|
|
4
|
-
import { useOrderStaticData as
|
|
1
|
+
import { jsxs as x, jsx as i } from "react/jsx-runtime";
|
|
2
|
+
import { toReverseDeliveryLabel as _, RadioButtonGroup as n } from "@bjsdistribution/dms-component-library";
|
|
3
|
+
import u from "styled-components";
|
|
4
|
+
import { useOrderStaticData as L, useOrderDetails as P } from "../../../../store.js";
|
|
5
5
|
import { capitalize as c } from "../../../../utils.js";
|
|
6
|
+
import { useClientPortal as A } from "../../../../../store.js";
|
|
6
7
|
const q = [
|
|
7
8
|
{ label: "Yes", value: "true" },
|
|
8
9
|
{ label: "No", value: "false" }
|
|
9
10
|
];
|
|
10
|
-
function
|
|
11
|
-
const [l] =
|
|
11
|
+
function k() {
|
|
12
|
+
const [l] = L(), [t, a] = P(), [p] = A(), y = l?.order_service_levels?.map(
|
|
12
13
|
(e) => ({
|
|
13
14
|
label: c(e.type.replaceAll("_", " ")),
|
|
14
15
|
value: e.id.toString()
|
|
15
16
|
})
|
|
16
|
-
),
|
|
17
|
+
), g = l?.order_delivery_point?.map(
|
|
17
18
|
(e) => ({
|
|
18
19
|
label: c(e.type.replaceAll("_", " ")),
|
|
19
20
|
value: e.id.toString()
|
|
20
21
|
})
|
|
21
|
-
),
|
|
22
|
-
(e) =>
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
22
|
+
), f = l?.order_type?.map(
|
|
23
|
+
(e) => {
|
|
24
|
+
const r = c(e.type.replaceAll("_", " "));
|
|
25
|
+
return {
|
|
26
|
+
label: p ? r : _(r),
|
|
27
|
+
value: e.id.toString()
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
), v = l?.order_service_list, h = t?.order_services_detail?.order_delivery_point_id?.toString(), S = t?.order_services_detail?.order_service_level_id?.toString(), m = t?.order_type_id?.toString(), D = (e) => {
|
|
31
|
+
const r = {
|
|
32
|
+
...t?.order_services_detail,
|
|
29
33
|
order_delivery_point_id: +e.target.value
|
|
30
|
-
}, o = { ...
|
|
31
|
-
|
|
32
|
-
}, m = (e) => {
|
|
33
|
-
const t = {
|
|
34
|
-
...r?.order_services_detail,
|
|
35
|
-
order_service_level_id: +e.target.value
|
|
36
|
-
}, o = { ...r, order_services_detail: t };
|
|
37
|
-
s(o);
|
|
38
|
-
}, D = (e) => {
|
|
39
|
-
const t = { ...r, order_type_id: +e.target.value };
|
|
40
|
-
s(t);
|
|
34
|
+
}, o = { ...t, order_services_detail: r };
|
|
35
|
+
a(o);
|
|
41
36
|
}, b = (e) => {
|
|
42
|
-
const
|
|
37
|
+
const r = {
|
|
38
|
+
...t?.order_services_detail,
|
|
39
|
+
order_service_level_id: +e.target.value
|
|
40
|
+
}, o = { ...t, order_services_detail: r };
|
|
41
|
+
a(o);
|
|
42
|
+
}, C = (e) => {
|
|
43
|
+
const r = { ...t, order_type_id: +e.target.value };
|
|
44
|
+
a(r);
|
|
45
|
+
}, O = (e) => {
|
|
46
|
+
const o = v?.find(
|
|
43
47
|
(d) => d.id === e
|
|
44
|
-
)?.type,
|
|
45
|
-
|
|
48
|
+
)?.type, w = !t[o];
|
|
49
|
+
a((d) => ({
|
|
46
50
|
...d,
|
|
47
|
-
[o]:
|
|
51
|
+
[o]: w
|
|
48
52
|
}));
|
|
49
53
|
};
|
|
50
|
-
return /* @__PURE__ */
|
|
51
|
-
/* @__PURE__ */ i(
|
|
54
|
+
return /* @__PURE__ */ x(T, { children: [
|
|
55
|
+
/* @__PURE__ */ i(s, { children: /* @__PURE__ */ i(
|
|
52
56
|
n,
|
|
53
57
|
{
|
|
54
58
|
heading: "Service Type",
|
|
55
|
-
onChange:
|
|
56
|
-
options:
|
|
57
|
-
selectedValue:
|
|
59
|
+
onChange: C,
|
|
60
|
+
options: f || [],
|
|
61
|
+
selectedValue: m || "",
|
|
58
62
|
direction: "vertical",
|
|
59
63
|
required: !1,
|
|
60
64
|
isDisabled: !0
|
|
61
65
|
}
|
|
62
66
|
) }),
|
|
63
|
-
/* @__PURE__ */ i(
|
|
67
|
+
/* @__PURE__ */ i(s, { children: /* @__PURE__ */ i(
|
|
64
68
|
n,
|
|
65
69
|
{
|
|
66
70
|
heading: "Service Level ",
|
|
67
|
-
onChange:
|
|
68
|
-
options:
|
|
69
|
-
selectedValue:
|
|
71
|
+
onChange: b,
|
|
72
|
+
options: y || [],
|
|
73
|
+
selectedValue: S || "",
|
|
70
74
|
direction: "vertical",
|
|
71
75
|
required: !1,
|
|
72
76
|
isDisabled: !0
|
|
73
77
|
}
|
|
74
78
|
) }),
|
|
75
|
-
/* @__PURE__ */ i(
|
|
79
|
+
/* @__PURE__ */ i(s, { children: /* @__PURE__ */ i(
|
|
76
80
|
n,
|
|
77
81
|
{
|
|
78
82
|
heading: "Delivery Point",
|
|
79
|
-
onChange:
|
|
80
|
-
options:
|
|
81
|
-
selectedValue:
|
|
83
|
+
onChange: D,
|
|
84
|
+
options: g || [],
|
|
85
|
+
selectedValue: h || "",
|
|
82
86
|
direction: "vertical",
|
|
83
87
|
required: !1,
|
|
84
88
|
isDisabled: !0
|
|
85
89
|
}
|
|
86
90
|
) }),
|
|
87
|
-
|
|
88
|
-
const
|
|
89
|
-
return /* @__PURE__ */ i(
|
|
91
|
+
v?.map((e) => {
|
|
92
|
+
const r = t[e?.type];
|
|
93
|
+
return /* @__PURE__ */ i(s, { children: /* @__PURE__ */ i(
|
|
90
94
|
n,
|
|
91
95
|
{
|
|
92
|
-
heading: e?.type?.replaceAll("_", " "),
|
|
93
|
-
onChange: () =>
|
|
96
|
+
heading: p ? e?.type?.replaceAll("_", " ") : _(e?.type?.replaceAll("_", " ")),
|
|
97
|
+
onChange: () => O(e?.id),
|
|
94
98
|
options: q || [],
|
|
95
|
-
selectedValue:
|
|
99
|
+
selectedValue: r ? "true" : "false",
|
|
96
100
|
direction: "vertical",
|
|
97
101
|
required: !1,
|
|
98
102
|
isDisabled: !0
|
|
@@ -101,7 +105,7 @@ function G() {
|
|
|
101
105
|
})
|
|
102
106
|
] });
|
|
103
107
|
}
|
|
104
|
-
const
|
|
108
|
+
const T = u.div`
|
|
105
109
|
display: flex;
|
|
106
110
|
flex-wrap: wrap;
|
|
107
111
|
gap: 16px;
|
|
@@ -109,11 +113,11 @@ const A = v.div`
|
|
|
109
113
|
width: 100%;
|
|
110
114
|
align-items: flex-start;
|
|
111
115
|
pointer-events: none;
|
|
112
|
-
`,
|
|
116
|
+
`, s = u.div`
|
|
113
117
|
flex: 1;
|
|
114
118
|
`;
|
|
115
119
|
export {
|
|
116
|
-
|
|
120
|
+
k as default,
|
|
117
121
|
q as radioButtonFilterOptions
|
|
118
122
|
};
|
|
119
123
|
//# sourceMappingURL=RadioButtons.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RadioButtons.js","sources":["../../../../../../../src/components/order-view/order-actions/actions/force-debrief/order-info/RadioButtons.tsx"],"sourcesContent":["import { RadioButtonGroup } from '@bjsdistribution/dms-component-library';\nimport React from 'react';\nimport styled from 'styled-components';\nimport { useOrderDetails, useOrderStaticData } from '../../../../store';\nimport { OrdersType } from '../../../../types';\nimport { capitalize } from '../../../../utils';\n\nexport const radioButtonFilterOptions = [\n { label: 'Yes', value: 'true' },\n { label: 'No', value: 'false' },\n];\n\nfunction RadioButtonGroups() {\n const [orderStaticData] = useOrderStaticData();\n const [orderDetails, setOrderDetails] = useOrderDetails();\n\n const serviceLevelOptions = orderStaticData?.order_service_levels?.map(\n (x: any) => ({\n label: capitalize(x.type.replaceAll('_', ' ')),\n value: x.id.toString(),\n })\n );\n\n const deliveryPointOptions = orderStaticData?.order_delivery_point?.map(\n (x: any) => ({\n label: capitalize(x.type.replaceAll('_', ' ')),\n value: x.id.toString(),\n })\n );\n\n const serviceTypeOptions = orderStaticData?.order_type?.map(\n (option: any) =>
|
|
1
|
+
{"version":3,"file":"RadioButtons.js","sources":["../../../../../../../src/components/order-view/order-actions/actions/force-debrief/order-info/RadioButtons.tsx"],"sourcesContent":["import { RadioButtonGroup, toReverseDeliveryLabel } from '@bjsdistribution/dms-component-library';\nimport React from 'react';\nimport styled from 'styled-components';\nimport { useOrderDetails, useOrderStaticData } from '../../../../store';\nimport { OrdersType } from '../../../../types';\nimport { capitalize } from '../../../../utils';\nimport { useClientPortal } from '../../../../../store';\n\nexport const radioButtonFilterOptions = [\n { label: 'Yes', value: 'true' },\n { label: 'No', value: 'false' },\n];\n\nfunction RadioButtonGroups() {\n const [orderStaticData] = useOrderStaticData();\n const [orderDetails, setOrderDetails] = useOrderDetails();\n const [isClientPortal] = useClientPortal();\n\n const serviceLevelOptions = orderStaticData?.order_service_levels?.map(\n (x: any) => ({\n label: capitalize(x.type.replaceAll('_', ' ')),\n value: x.id.toString(),\n })\n );\n\n const deliveryPointOptions = orderStaticData?.order_delivery_point?.map(\n (x: any) => ({\n label: capitalize(x.type.replaceAll('_', ' ')),\n value: x.id.toString(),\n })\n );\n\n const serviceTypeOptions = orderStaticData?.order_type?.map(\n (option: any) => {\n const rawLabel = capitalize(option.type.replaceAll('_', ' '));\n return {\n label: isClientPortal ? rawLabel : toReverseDeliveryLabel(rawLabel),\n value: option.id.toString(),\n };\n }\n );\n\n const orderServicesOptions = orderStaticData?.order_service_list;\n const deliveryPointId = orderDetails?.order_services_detail?.order_delivery_point_id?.toString();\n const serviceLevelId = orderDetails?.order_services_detail?.order_service_level_id?.toString();\n const orderTypeId = orderDetails?.order_type_id?.toString();\n\n // ON CHANGE HANDLERS\n const onChangeDeliveryPoint = (\n event: React.ChangeEvent<HTMLInputElement>\n ) => {\n const updatedServices = {\n ...orderDetails?.order_services_detail!,\n order_delivery_point_id: +event.target.value,\n };\n const newData = { ...orderDetails, order_services_detail: updatedServices };\n setOrderDetails(newData);\n };\n\n const onChangeServiceLevel = (event: React.ChangeEvent<HTMLInputElement>) => {\n const updatedServices = {\n ...orderDetails?.order_services_detail!,\n order_service_level_id: +event.target.value,\n };\n const newData = { ...orderDetails, order_services_detail: updatedServices };\n setOrderDetails(newData);\n };\n\n const onChangeServiceType = (event: React.ChangeEvent<HTMLInputElement>) => {\n const newData = { ...orderDetails, order_type_id: +event.target.value };\n setOrderDetails(newData);\n };\n\n const onChangeServices = (id: number) => {\n const selectedService = orderServicesOptions?.find(\n (item: any) => item.id === id\n );\n const key = selectedService?.type;\n const value = !orderDetails[key as keyof OrdersType];\n setOrderDetails(prev => ({\n ...prev,\n [key]: value,\n }));\n };\n\n return (\n <Container>\n <Group>\n <RadioButtonGroup\n heading=\"Service Type\"\n onChange={onChangeServiceType}\n options={serviceTypeOptions || []}\n selectedValue={orderTypeId || ''}\n direction=\"vertical\"\n required={false}\n isDisabled\n />\n </Group>\n <Group>\n <RadioButtonGroup\n heading=\"Service Level \"\n onChange={onChangeServiceLevel}\n options={serviceLevelOptions || []}\n selectedValue={serviceLevelId || ''}\n direction=\"vertical\"\n required={false}\n isDisabled\n />\n </Group>\n <Group>\n <RadioButtonGroup\n heading=\"Delivery Point\"\n onChange={onChangeDeliveryPoint}\n options={deliveryPointOptions || []}\n selectedValue={deliveryPointId || ''}\n direction=\"vertical\"\n required={false}\n isDisabled\n />\n </Group>\n\n {orderServicesOptions?.map((service: any) => {\n const selected = orderDetails[service?.type as keyof OrdersType];\n return (\n <Group>\n <RadioButtonGroup\n heading={\n isClientPortal\n ? service?.type?.replaceAll('_', ' ')\n : toReverseDeliveryLabel(service?.type?.replaceAll('_', ' '))\n }\n onChange={() => onChangeServices(service?.id)}\n options={radioButtonFilterOptions || []}\n selectedValue={selected ? 'true' : 'false'}\n direction=\"vertical\"\n required={false}\n isDisabled\n />\n </Group>\n );\n })}\n </Container>\n );\n}\nconst Container = styled.div`\n display: flex;\n flex-wrap: wrap;\n gap: 16px;\n padding: 8px;\n width: 100%;\n align-items: flex-start;\n pointer-events: none;\n`;\n\nconst Group = styled.div`\n flex: 1;\n`;\n\nexport default RadioButtonGroups;\n"],"names":["radioButtonFilterOptions","RadioButtonGroups","orderStaticData","useOrderStaticData","orderDetails","setOrderDetails","useOrderDetails","isClientPortal","useClientPortal","serviceLevelOptions","x","capitalize","deliveryPointOptions","serviceTypeOptions","option","rawLabel","toReverseDeliveryLabel","orderServicesOptions","deliveryPointId","serviceLevelId","orderTypeId","onChangeDeliveryPoint","event","updatedServices","newData","onChangeServiceLevel","onChangeServiceType","onChangeServices","id","key","item","value","prev","Container","jsx","Group","RadioButtonGroup","service","selected","styled"],"mappings":"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"}
|