大佬,来挑战

我写模板的时候转换后的报文格式有问题,麻烦大佬帮忙给改下模板

模板:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:rdf="http://www.w3.org/TR/rdf-syntax-grammar/" xmlns:rdfs="http://www.w3.org/TR/rdf-schema-grammar/">
  <xsl:output method="text" />
  
  <xsl:template match="Request/Body/SaleOrderOutboundDetailRequest">
    {"data":{"header": {
      "orderType": "<xsl:value-of select="SaleOrders/SaleOrder/ErpOrderType"/>",
      "customerId": "<xsl:value-of select="CompanyCode"/>",
      "warehouseId": "<xsl:value-of select="SaleOrders/SaleOrder/WarehouseCode"/>",
      "statementMarker":"Y",
      "deliveryNo":"<xsl:value-of select="SaleOrders/SaleOrder/WayBillNo"/>",
      "docNo": "<xsl:value-of select="SaleOrders/SaleOrder/ErpOrder"/>",
      "details": [<xsl:apply-templates select="SaleOrders/SaleOrder/Containers/Container/ContainerItems/Item"/>]
    }}}
  </xsl:template>
  
  <xsl:template match="SaleOrders/SaleOrder/Containers/Container/ContainerItems/Item">
    { "lineNo":"<xsl:value-of select="ErpOrderLineNum"/>", 
      "sku":"<xsl:value-of select="SkuNo"/>", 
      "qtyOrdered":"<xsl:value-of select="ActualQty"/>", 
      "serialNo":[<xsl:apply-templates select="SerialNumbers/SerialNumber"/>]
    }
  </xsl:template>
  
  <xsl:template match="SerialNumbers/SerialNumber">
    "<xsl:value-of select="./text()"/>"<xsl:if test="position() != last()">,</xsl:if>
  </xsl:template>
</xsl:stylesheet>

转换后的报文:


    {"data":{"header": {
      "orderType": "DC",
      "customerId":"010",
      "warehouseId":"DSFCK",
      "statementMarker":"Y",
      "deliveryNo":"SF1630016474617",
      "docNo": "SO24032000001",
      "details": [
    { "lineNo":"0000039", 
      "sku":"0201050851", 
      "qtyOrdered":"1", 
      "serialNo":[]
    }


    { "lineNo":"0000038", 
      "sku":"8006010026", 
      "qtyOrdered":"1", 
      "serialNo":["7474747"]
    }
  ]
    }}}

辛苦大佬了!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值