Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
@skava/graphql / src / endpoints / oms / defaultParams.ts
Size: Mime:
// import { campaignId, storeId } from '../../bootstrapper/api/config'
import querystring from 'query-string'

export const orderLookUpParams = {
  channel: 'user',
  // orderdetails: querystring.stringify({
  //   id: '15e74b8c144ed',
  //   customerinfo: { lastName: 'M', postalCode: '94111' },
  // }),
  // customparams: querystring.stringify({}),
}

export const getOrdersParams = {
  channel: 'user',
  limit: 5,
  offset: 0,
  customerid: '',
  orderid: '',
}

// export interface DefaultOrderParams {
//   limit: string
//   offset: string
//   customerid: string
//   channel: string
//   orderid: string
//   status: string
// }

export function toOrderListParams(orderData = getOrdersParams) {
  const { limit, offset, customerid, channel, orderid, fromdate, todate, status } = orderData
  const orderdetails = {}
  if (orderid) {
    orderdetails.id = orderid.toLowerCase()
    //@ todo @vetri to check for text transform in ui
  }
  if (status) {
    orderdetails.status = status
  }
  const params = {
    limit,
    offset,
    customerid,
    channel: channel || 'user',
    // orderid,
    orderdetails: JSON.stringify(orderdetails),
    customparams: JSON.stringify({
      associateId: '0',
      isLatestOrder: '',
    }),
  }
  if (fromdate) {
    params.fromdate = [fromdate]
  }
  if (todate) {
    params.todate = [todate]
  }
  return params
}

export const updateOrdersParams = toOrderListParams({})

export const detailedOrdersParams = {
  channel: 'user',
  limit: 5,
  offset: 0,
}

export const CancelOrderParams = (id, items) => {
  // campaignId,
  // storeId,
  // locale: 'en_US',

  const cancelOrderPostParams = {
    channel: 'web',
    reasoncode: '',
    reasonmessage: '',
    orderinfo: {
      // '151575256667893909',
      id: id,
      items: items,
    },
    customparams: {
      associateId: '0',
      messageCampaignId: '369',
    },
  }
  return cancelOrderPostParams
}
export const cancelOrderParams = CancelOrderParams({})

export const returnOrderParams = {
  // campaignId,
  // storeId,
  // locale: 'en_US',
  channel: 'web',
  reasoncode: 101,
  // @todo @invalid
  reasonmessage: 'hello',
  orderid: 150305575237948671,
  orderinfo: querystring.stringify({
    id: '2bf53fac-fe22-4930-bb59-fc78df71b0a5',
    items: [{ itemid: '58413', quantity: '1', skuId: 'stb18' }],
  }),
}

// export interface OrderLookupParams {
//   lastname: string;
//   orderNumber: string;
//   zipcode: string;
// }

export const defaultOrderLookupParams = {
  lastname: '',
  orderNumber: '',
  zipcode: '',
}

export const getOrderLookupPostData = (orderLookupParams = defaultOrderLookupParams) => {
  const { lastname, orderNumber, zipcode } = orderLookupParams
  const postData = {
    orderdetails: JSON.stringify({
      id: orderNumber,
      customerinfo: { lastName: lastname, postalCode: zipcode },
    }),
    customparams: JSON.stringify({}),
  }

  return postData
}