Untitled

 avatar
unknown
plain_text
a year ago
1.7 kB
5
Indexable
const cleanAllRequests = (requests: any) => {
  return requests.map((request: any) => {
    // Extract unique service types
    const serviceTypesSet = new Set(
      request.services ? request.services.map((service: any) => service.type) : []
    );
    const serviceTypes = serviceTypesSet.size > 0 ? Array.from(serviceTypesSet).join(', ') : '-';

    // Format customer data
    const customer = request.customer
      ? typeof request.customer === 'object'
        ? `${request.customer.firstName ? request.customer.firstName + ' ' : ''}${request.customer.lastName || request.customer.name}`
        : request.customer
      : 'Unknown';

    return {
      id: request._id,
      reference: request.reference,
      source: request.source,
      isB2B: request.isB2B,
      customer: customer,
      onModel: request.onModel,
      isUrgent: request.isUrgent,
      isDelegation: request.isDelegation,
      vatIncluded: request.vatIncluded,
      comments: request.comments,
      currency: request.currency,
      status: request.status,
      createdAt: request.createdAt,
      columns: [
        { title: '', value: '' },
        { title: 'Reference', value: request.reference },
        { title: 'Service Type', value: serviceTypes },
        { title: 'Source', value: request.source },
        {
          title: 'Is B2B',
          value: request.isB2B ? 'B2B' : 'B2C'
        },
        { title: 'Customer', value: customer },
        { title: 'Model', value: request.onModel || 'Customer' },
        { title: 'Status', value: request.status }
      ]
    };
  });
};

export { cleanAllRequests };
Editor is loading...
Leave a Comment