javascript 不包括运费,这是价格

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 不包括运费,这是价格相关的知识,希望对你有一定的参考价值。

'use strict';

const config = require('../config');
const debug = require('debug')('pricealert:PriceCrawler');
const { OperationHelper } = require('apac');
const xmlParser = require('xml2json');

class PriceCrawler {
  constructor() {
    this.opHelper = new OperationHelper(config.get('aws'));
  }

  fetchPrice(asin) {

    return new Promise((resolve, reject) => {
      setTimeout(() => {
        this.opHelper.execute('ItemLookup', {
          'ItemId': asin,
          'ResponseGroup': 'ItemAttributes,Offers'
        })
          .then(xml => JSON.parse(xmlParser.toJson(xml.responseBody)))
          .then(json => {
            let cost;

            if (json.ItemLookupResponse &&
              json.ItemLookupResponse.Items &&
              json.ItemLookupResponse.Items.Item &&
              json.ItemLookupResponse.Items.Item.OfferSummary &&
              json.ItemLookupResponse.Items.Item.OfferSummary.LowestNewPrice &&
              json.ItemLookupResponse.Items.Item.OfferSummary.LowestNewPrice.Amount) {
              cost = json.ItemLookupResponse.Items.Item.OfferSummary.LowestNewPrice.Amount / 100;
            } else {
              cost = -1;
            }

            resolve({
              asin: asin,
              cost: cost
            });
          })
          .catch((err) => {
            console.error('Something went wrong! ', err);
            reject(err);
          });
      }, 5000); // timeout will control our rate limiting
    });
  }

  execute(data) {
    debug('getting the prices for asin %j', data);
    return this.fetchPrice(data.asin);
  }
}

module.exports = PriceCrawler;

以上是关于javascript 不包括运费,这是价格的主要内容,如果未能解决你的问题,请参考以下文章

从贝宝表格中减去优惠券(折扣)价格(如果可能)

自定义以编程方式在 Woocommerce 中添加运费 [重复]

运费不包括在 wordpress woocommerce 中的贝宝快递结帐中

WooCommerce - 覆盖运费

sap SD条件类型的作用是啥?

【请教】采购运费发票校验差异进了GR/IR科目,没进差异科目。啥原因,怎么解决?