Как передать идентификатор правила цены Shopify в Shopify Скидка создать - PullRequest
0 голосов
/ 10 октября 2018

Я пытаюсь создать купон на скидку, используя MONEI / Shopify-api-node Я добился успеха в создании правила цены и идентификатора правила цены. index.js (сервер узла)

theme.liquid (клиент)

В методе .then priceRule.create после получения идентификатора priceRuleЯ не хочу возвращать ответ пользователю.Я хочу использовать идентификатор priceRule, чтобы сделать еще один вызов, но для discountCode.create.В функции .then функции discountCode.create я не могу получить идентификатор priceRule, чтобы создать код скидки и вернуть его обратно в пользовательский интерфейс.

Короче, как можно передать идентификатор правила цены из shopify.priceRule.create в shopify.discountCode.create?

Спасибо.

1 Ответ

0 голосов
/ 10 ноября 2018

Так я передаю вложенную функцию обещания и работаю как по волшебству.

  shopify.priceRule.create({
  email,
  phone,
  title: "REFERRALFRIEND",
  allocation_method: "each",
  once_per_customer: true,
  target_type: "line_item",
  target_selection: "all",
  value_type: "percentage",
  value: -15.0,
  customer_selection: "all",
  starts_at: "2018-10-10T1:00:10Z"
})
.then((data) => {
    shopify.discountCode.create(data.id,
      { code: couponcode })
    .then((data) => {
        console.log(`coupon code created = `, data);
        response.json({
            status: 'success',
            discount_code: {
                code: couponcode,
            }
        });
    })
    .catch((err) => {
        console.log(`Error in create coupon code'. = `, err);
        console.log(`Error creating coupon code'. ${JSON.stringify(err.response.body)}`);
        response.status(err.statusCode).send(err.response.body);
    });
})
.catch((err) => {
    console.log(`Error in create price rule'. = `, err);
    console.log(`Error creating price rule'. ${JSON.stringify(err.response.body)}`);
    response.status(err.statusCode).send(err.response.body);
});      

}));

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...