使用Google应用程序脚本API将Woocommerce订单详细信息集成到Google工作表时出现问题

使用Google应用程序脚本API将Woocommerce订单详细信息集成到Google工作表时出现问题,woocommerce,google-sheets-api,Woocommerce,Google Sheets Api,我有一个API,可以自动将新订单的详细信息从我的Woocommerce商店拉到Google表单中。它似乎在工作,但是,它没有拉到我的谷歌表前7个订单。它拥有前7个之后的所有订单。我如何让它把前7个订单拉到表中 以下是我的谷歌应用程序脚本: function start_sync() { // Followed instructions at https://github.com/mithunmanohar/woocommerce-orders-google-sheets-integratio

我有一个API,可以自动将新订单的详细信息从我的Woocommerce商店拉到Google表单中。它似乎在工作,但是,它没有拉到我的谷歌表前7个订单。它拥有前7个之后的所有订单。我如何让它把前7个订单拉到表中

以下是我的谷歌应用程序脚本:

function start_sync() {
  // Followed instructions at https://github.com/mithunmanohar/woocommerce-orders-google-sheets-integration
  var sheet_name = "OrderDetails"
  update_order_5_min(sheet_name)
}


function update_order_5_min(sheet_name) {
  var ck = "ck_ed82fae51e5bafce28dde95224db9c9c4bd36dba";
  var cs = "cs_9a16fd7b641769a65412f336de3e7a928f7e153c";
  var website = "https://www.funtrackdayz.com";

  var now = new Date();
  var website_t ="240";
  var min = website_t * 60
  now.setMinutes(now.getMinutes() - min);
  var n = now.toISOString();

  var surl = website + "/wc-api/v3/orders?consumer_key=" + ck + "&consumer_secret=" + cs + "&status=processing&filter[created_at_min]=" + n //"&after=2016-10-27T10:10:10Z"
  // var surl = website + "/wc-api/v3/orders?consumer_key=" + ck + "&consumer_secret=" + cs + "&status=processing"
  // &filter[created_at_min]=" + n //"&after=2016-10-27T10:10:10Z"
  var url = surl

  var options = {
        "method": "GET",
        "Content-Type": "application/x-www-form-urlencoded;charset=UTF-8",
        "muteHttpExceptions": true,
    };
  var result = UrlFetchApp.fetch(url, options);
  if (result.getResponseCode() == 200) {
    var params = JSON.parse(result.getContentText());
  }

  var doc = SpreadsheetApp.getActiveSpreadsheet();
  var temp = doc.getSheetByName(sheet_name);
  var consumption = {}
  //"orders"
  arrayLength = params["orders"].length
  for (var i = 0; i < arrayLength; i++) {
    var container = [];
    a = container.push(params["orders"][i]["billing_address"]["first_name"]);
    a = container.push(params["orders"][i]["billing_address"]["last_name"]);
    a = container.push(params["orders"][i]["billing_address"]["address_1"] + ", " + params["orders"][i]["billing_address"]["address_2"]);

    a = container.push("");

    a = container.push(params["orders"][i]["billing_address"]["city"]);
    a = container.push(params["orders"][i]["billing_address"]["state"]);
    a = container.push(params["orders"][i]["billing_address"]["postcode"]);
    a = container.push(params["orders"][i]["billing_address"]["phone"]);
    a = container.push(params["orders"][i]["billing_address"]["email"]);

    a = container.push(params["orders"][i]["total"]); //price
    a = container.push(params["orders"][i]["payment_details"]["method_id"]);
    c = params["orders"][i]["line_items"].length;
    items = "";
    skus="";

    for (var k = 0; k < c; k++) {
      item = params["orders"][i]["line_items"][k]["name"];
      qty = params["orders"][i]["line_items"][k]["quantity"];
      sku = params["orders"][i]["line_items"][k]["sku"];

      meta = ""
      try {
        meta = params["orders"][i]["line_items"][k]["meta"][0]["value"];
        meta = " - " + meta
      } catch (err) {
        meta = ""
      }

      item_f = qty + " x " + item + meta
      items = items + item_f + ",\n"
      skus = skus + ",\n"
    }

    a = container.push(items)
    a = container.push(sku)
    // a = container.push(params["orders"][i]["total_line_items_quantity"]); // Quantity
    a = container.push(params["orders"][i]["order_number"]); //
    a = container.push(params["orders"][i]["note"])
    a = container.push(params["orders"][i]["created_at"]);

    var doc = SpreadsheetApp.getActiveSpreadsheet();
    var temp = doc.getSheetByName(sheet_name);
    temp.appendRow(container);
    removeDuplicates(sheet_name)
  }
}

function removeDuplicates(sheet_name) {
  var doc = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = doc.getSheetByName(sheet_name);
  var data = sheet.getDataRange().getValues();
  var newData = new Array();

  for (i in data) {
    var row = data[i];
    var duplicate = false;
    for (j in newData) {
      if (row.join() == newData[j].join()) {
          duplicate = true;
      }
    }
    if (!duplicate) {
      newData.push(row);
    }
  }
  sheet.clearContents();
  sheet.getRange(1, 1, newData.length, newData[0].length).setValues(newData);
}
函数启动\u同步(){
//遵照https://github.com/mithunmanohar/woocommerce-orders-google-sheets-integration
var表\u name=“订单详细信息”
更新订单5分钟(工作表名称)
}
功能更新顺序5分钟(工作表名称){
var ck=“ck \-u ed82fae51e5bafce28dde95224db9c9c4bd36dba”;
var cs=“cs_9a16fd7b641769a65412f336de3e7a928f7e153c”;
var网站=”https://www.funtrackdayz.com";
var now=新日期();
var网站\u t=“240”;
var min=网站\u t*60
now.setMinutes(now.getMinutes()-min);
var n=now.toISOString();
var surl=website+“/wc api/v3/orders?consumer_key=“+ck+”&consumer_secret=“+cs+”&status=processing&filter[created_at_min]=“+n/”&after=2016-10-27T10:10:10Z”
//var surl=website+“/wc api/v3/orders?consumer_key=“+ck+”&consumer_secret=“+cs+”&status=processing”
//&filter[created_at_min]=“n/”&after=2016-10-27T10:10:10Z”
var url=surl
变量选项={
“方法”:“获取”,
“内容类型”:“application/x-www-form-urlencoded;charset=UTF-8”,
“muteHttpExceptions”:true,
};
var result=UrlFetchApp.fetch(url,选项);
if(result.getResponseCode()==200){
var params=JSON.parse(result.getContentText());
}
var doc=SpreadsheetApp.getActiveSpreadsheet();
var temp=文件getSheetByName(工作表名称);
变量消耗={}
//“订单”
arrayLength=参数[“订单”]。长度
对于(变量i=0;i
显而易见的答案是,前7个订单发生在您请求的时间段之前。如果不是这样,请提供有关这7个最早订单的更多详细信息。是的,可能是这样。我从其他人那里获得了此项目。