嗨在这里我有一大堆产品与不同的json对象。我必须根据价格获得产品名称。如果价格不为零或不为零,则获得该产品。根据价格设置产品名称,如果价格是零或-1或零忽略这些产品
0
A
回答
1
下面是脚本:
下面的脚本会遍历通的JSON和提取产品名称在有价格的地方也放入数据放入一张名为productPriceMap
的地图中,以后可以使用。
def productPriceMap = [:]
def jsonParsed = new groovy.json.JsonSlurper().parseText(json)
jsonParsed.products.collect{ product ->
product.productRatePlans.collect { ratePlan ->
ratePlan.productRatePlanCharges.collect { charge ->
charge.productRatePlanChargeTiers.collect{ tier ->
if (tier.price) {
log.info "${tier.price} - ${product.name}"
productPriceMap[product.name] = tier.price
}
}
}
}
}
log.info "Product and price map\n$productPriceMap"
您可以快速地尝试这个网上Demo
我相信这可以缩短/更groovified。但这是我能够得到的。
0
你正在做的是过滤某个列表。所以它会给你一些结果,但必须存储在某个地方以进一步使用它。
喜欢这个
def toList(priceNullCheck){
def filteredList = [priceNullCheck].flatten().findAll { it != null}
log.info filteredList
}
否则,您可以返回[priceNullCheck].flatten().findAll { it != null}
直接
修订
import javax.xml.transform.Transformer
import javax.xml.transform.TransformerFactory
import javax.xml.transform.dom.DOMSource
import javax.xml.transform.stream.StreamResult
def groovyUtils = new com.eviware.soapui.support.GroovyUtils(context)
def response = groovyUtils.getXmlHolder("TestRequest#Response")
def collectResult = []
use (groovy.xml.dom.DOMCategory) {
for(node in response.getDomNodes("//*:products//*:e")) {
def eachNodeAsXml = groovyUtils.getXmlHolder(nodeToString(node))
String priceTagValue = eachNodeAsXml.getNodeValue("//*:price")
float price = priceTagValue?Float.parseFloat(priceTagValue):0
if(price>0)
collectResult.add(eachNodeAsXml.getNodeValue("/*:name"))
}
}
println collectResult
def nodeToString(def node)
{
StringWriter writer = new StringWriter();
Transformer transformer = TransformerFactory.newInstance().newTransformer();
transformer.transform(new DOMSource(node), new StreamResult(writer));
return writer.toString();
}
+0
但是我没有得到我期待的东西,首先获取所有的价格值一个字符串,然后将其转换为列表,然后我必须检查价格不等于零,或者小于0,然后null.then必须设置产品名称 – Prathyusha
+0
哦!我以为你只有该片段的问题:D无论如何,请尝试发布代码。 –
相关问题
- 1. 隐藏产品价格如果为零
- 2. 以上是shopify中产品价格的产品名称
- 3. 产品价格表事件?
- 4. 产品价格Prestashop 1.7
- 5. 按价格过滤产品
- 6. 价格检查产品如果不可用获取类别价格其他产品价格 - 需要mysql查询
- 7. 在Magento中按价格列出产品但在最后零价格
- 8. 产品价格在配置产品中未更新
- 9. 如何根据每个产品的单排产品获得不同的价格
- 10. Magento可配置产品价格
- 11. 更改可配置产品的价格
- 12. 添加其他产品的价格与mangento基础产品价格
- 13. Magento在应用产品目录价格规则前的产品价格
- 14. 过滤零售产品名称产品折扣表productLookup ax 2012
- 15. 要根据产品的价格过滤产品和打印将过滤
- 16. 如何按产品价格排序Magento产品列表?
- 17. 如何获得捆绑产品的捆绑产品价格税?
- 18. 使用ASIN在亚马逊购买产品或产品的价格
- 19. Magento 2:如何在自定义电子邮件模板中设置产品名称和产品价格?
- 20. 如何根据用户的IP地址显示产品价格
- 21. 我如何根据价格订购产品
- 22. Flipkart.com产品的“价格”和产品使用Python
- 23. 打开购物车许多产品的相同产品价格?
- 24. 针对不同产品版本的不同价格的产品
- 25. 在woocommerce上对齐产品名称和价格
- 26. 正则表达式搜索产品名称并获得价格
- 27. 如何为所有产品变量设置一般价格? (WooCommerce)
- 28. 如何在opencart产品中设置自定义价格?
- 29. 产品页面上的Shippo价格
- 30. 动态产品价格在Rails的
你发布的内容不是有效的json。你介意发布有效的json吗? – Rao
@Rao发布了有效的一个。 – Prathyusha
Prathyusha,价格124.99的产品名称是什么? – Rao