Skip to content

Commit d3ecc85

Browse files
committed
create a configureSOWs function that takes advantage of a refactored configureDocument function for better reusability
1 parent a5c1e58 commit d3ecc85

File tree

2 files changed

+19
-18
lines changed

2 files changed

+19
-18
lines changed

utils/api/configurations.js

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -185,34 +185,35 @@ export const configureFiles = (data) => {
185185
return allFiles
186186
}
187187

188-
export const configureDocuments = (documents, requestIdentifier) => {
189-
return documents?.map(document => ({
190-
identifier: document.identifier,
188+
export const configureDocument = (document, requestIdentifier) => {
189+
return {
191190
date: normalizeDate(document.created_at),
192191
documentStatus: document.status,
193192
documentStatusColor: statusColors[configureStatus(document.status)].bg,
194193
documentType: document.type,
195194
documentTypeColor: 'bg-dark',
195+
identifier: document.identifier,
196196
lineItems: configureLineItems(document.line_items),
197197
requestIdentifier,
198-
subtotalPrice: document.retail_subtotal_price_currency,
199-
taxAmount: document.tax_cost_currency,
200-
terms: document.payment_terms,
201-
totalPrice: document.retail_total_price_currency,
202198
shippingPrice: document.shipping_cost_currency,
203199
shipTo: {
204-
organizationName: document.ship_to?.organization_name,
205-
text: document.ship_to?.text,
200+
organizationName: document.ship_to.organization_name,
201+
text: document.ship_to.text,
206202
},
207203
shipFrom: {
208-
organizationName: document.ship_from?.organization_name,
209-
text: document.ship_from?.text,
204+
organizationName: document.ship_from.organization_name,
205+
text: document.ship_from.text,
210206
},
211-
// the following properties only need to exist on POs
212-
turnaroundTime: document.turn_around_time.human || null,
213-
poNumber: document.po_number || null,
214-
relatedSOWIdentifier: document.proposal_ref?.identifier || null,
215-
adPO: document.scientist_identifier || null,
207+
subtotalPrice: document.retail_subtotal_price_currency,
208+
taxAmount: document.tax_cost_currency,
209+
terms: document.payment_terms,
210+
totalPrice: document.retail_total_price_currency,
211+
}
212+
}
213+
214+
export const configureSOWs = (sows, requestIdentifier) => {
215+
return sows?.map((sow) => ({
216+
...configureDocument(sow, requestIdentifier),
216217
}))
217218
}
218219

utils/api/requests.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import useSWR from 'swr'
22
import {
33
configureFiles,
4-
configureDocuments,
54
configureDynamicFormSchema,
65
configureDynamicFormUiSchema,
76
configureMessages,
87
configureRequests,
8+
configureSOWs,
99
} from './configurations'
1010
import { fetcher, posting, updating } from './base'
1111

@@ -45,7 +45,7 @@ export const useAllSOWs = (id, requestIdentifier, accessToken) => {
4545
const { data, error } = useSWR(id ? [`/quote_groups/${id}/proposals.json`, accessToken] : null)
4646
let allSOWs
4747
if (data) {
48-
allSOWs = configureDocuments(data, requestIdentifier)
48+
allSOWs = configureSOWs(data, requestIdentifier)
4949
}
5050

5151
return {

0 commit comments

Comments
 (0)