首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何检查和更改商业工具updateCart查询上的操作?

如何检查和更改商业工具updateCart查询上的操作?
EN

Stack Overflow用户
提问于 2022-05-04 17:45:37
回答 1查看 62关注 0票数 0

我的问题是:

graphql中是否有允许轻松编辑传入查询的特性或方法,以防止执行操作?我想在web代理中检查我的查询,编辑操作,然后将它发送到它的目的地。

上下文:

我在一个用于商业工具的代理服务中运行了一个突变,如下所示:

代码语言:javascript
复制
mutation AddLineItem(
  $id: String
  $version: Long!
  $sku: String
  $quantity: Long
  $currencyCode: Currency!
  $centAmount: Long!
  $custom: String!
) {
  updateCart(
    version: $version
    id: $id
    actions: [
      {
        addLineItem: {
          sku: $sku
          quantity: $quantity
          externalPrice: { centPrecision: { currencyCode: $currencyCode, centAmount: $centAmount } }
          custom: { typeKey: "custom-type", fields: [{ name: "field", value: $custom }] }
        }
      }
    ]
  ) {
    id
    version
    lineItems {
      ...LineItemFieldsCart
    }
  }
}

根据commercetools文档,在设置外部价格字段时,重复项目将作为单独的行项目添加到购物车中,而不是像默认行为那样增加数量。问题是,我想要默认的行为,而不是重复的行项。减轻这种情况的正常方法是添加一个更新扩展来删除重复的更新,但是我正在开发一个已经成熟的系统,它具有多个更新扩展,所有的更新扩展都在行项上操作,这使得删除设备在更新扩展中成为一个沉重的负担。我希望在代理中编辑查询,这样重复的项目就不会首先发生。有什么简单的方法吗?

EN

回答 1

Stack Overflow用户

发布于 2022-05-05 10:00:20

对于“添加行项更新”操作,当前的行为是在使用外部价格时创建一个单独的行项,而不是像您所描述的那样将额外的数量添加到已经存在的行项中。如果要确保在使用外部价格时将数量添加到已经存在的行项目中,则可以在添加新行项之前进行检查,并使用更新操作更改行项数量,以防产品变体与购物车中已经存在的行项匹配。这将使您可以在那里设置外部价格,而不会添加任何其他类似的项目。https://docs.commercetools.com/api/projects/carts#change-lineitem-quantity

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72117361

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档