English
Groovy Code Examples
About 296 wordsLess than 1 minute
2026-01-09
-- Per-order generation
-- Rebate by master/detail objects
// Get master object data
Map masterData = master["containerDocument"] as Map
// Get account ID, other fields refer to corresponding object
String accountId = masterData["account_id"] as String
log.info("account_id:"+accountId)
// Get detail object List
List detailList = detail["SalesOrderProductObj"] as List
// Iterate through detail objects
detailList.each{item ->
Map detailDataMap = item as Map
// Get detail object data
Map detailData = detailDataMap["containerDocument"] as Map
// Get product ID, other fields refer to corresponding object
String productId = detailData["product_id"] as String
log.info("product_id:"+productId)
}
// Get rebate policy name, other fields refer to rebate policy object
Map rebatePolicyDataMap = rebateMaster["containerDocument"] as Map
String rebatePolicyName = rebatePolicyDataMap["name"] as String
log.info("rebatePolicyName:"+rebatePolicyName)
// Get rebate policy rule name, other fields refer to rebate policy rule object
List rebatePolicyRuleList = rebateDetail["RebatePolicyRuleObj"] as List
rebatePolicyRuleList.each{item ->
Map detailDataMap = item as Map
Map detailData = detailDataMap["containerDocument"] as Map
String rebatePolicyRuleName = detailData["name"] as String
log.info("rebatePolicyRuleName:"+rebatePolicyRuleName)
}
// master -> boolean true means validation passed, false or null means failed
Map result = ["master": true]
return result
// Get account ID
Fx.log.info(accountId)
-- Historical generation
// Get rebate policy name, other fields refer to rebate policy object
Map rebatePolicyDataMap = rebateMaster["containerDocument"] as Map
String rebatePolicyName = rebatePolicyDataMap["name"] as String
log.info("rebatePolicyName:"+rebatePolicyName)
// Get rebate policy rule name, other fields refer to rebate policy rule object
List rebatePolicyRuleList = rebateDetail["RebatePolicyRuleObj"] as List
rebatePolicyRuleList.each{item ->
Map detailDataMap = item as Map
Map detailData = detailDataMap["containerDocument"] as Map
String rebatePolicyRuleName = detailData["name"] as String
log.info("rebatePolicyRuleName:"+rebatePolicyRuleName)
}
// Specific account id -> boolean true means validation passed, false or null means failed
Map result = [:]
result.put(accountId,true)
// result -> judgment result value, optional if not needed
result.put("result",25000)
return result