我有一张清单:
ID | Product Code | Product Type | Transaction Amt | Charges Amt | Charges ID
1 | 001 | 001 | 10.00 | 0.01 | 001
2 | 001 | 001 | 11.00 | 0.01 | 001
3 | 002 | 001 | 12.00 | 0.01 | 002
我想有这样的结果:
ID | Product Code | Product Type | Transaction Amt | Charges Amt | Charges ID
1 | 001 | 001 | 21.00 | 0.01 | 001
3 | 002 | 001 | 12.00 | 0.01 | 002
Map<String, Transaction> map = txs.stream()
.map(s -> {
s.setTotalCount(1);
return s;
})
.collect(Collectors.toMap(f -> f.getProductCode() + f.getProductType()
Function.identity(),
(s, a) -> new FeeAllocationTransactionModel(
s.getProductCode(),
s.getProductType(),
s.getTranzAmt().add(a.getTranzAmt()),
s.getCharges().add(a.getFeeCharges()),
s.getTotalCount() + 1
)));
List<Transaction> reduced = new ArrayList<>(map.values());
ID | Product Code | Product Type | Transaction Amt | Charges Amt | Charges ID
1 | 001 | 001 | 21.00 | **0.02** | 001
3 | 002 | 001 | 12.00 | 0.01 | 002
您可以将mergeFunction中的费用id检查到Collectors.tomap
:
java prettyprint-override">(s, a) -> {
double charges = (s.getChargesId().equals(a.getChargesId())
? s.getCharges()
: s.getCharges().add(a.getFeeCharges());
return new FeeAllocationTransactionModel(
s.getProductCode(),
s.getProductType(),
s.getTranzAmt().add(a.getTranzAmt()),
charges,
s.getTotalCount() + 1);
}
我有个人课: 我有一个叫personList的人的名单: 现在我需要找到所有状态为“不活跃”的人,不管这个人是否有身份证。如果一个人没有身份证,但状态为“活跃”,也包括那个人。我正在使用Java流进行过滤: 流式传输后的结果是没有人被选中。第一个人没有被选中是因为它没有通过第二个过滤器,最后一个人没有被选中是因为它没有通过第一个过滤器。 我想我可以通过使用将两个过滤器合并成一个来修复它,但是我正在
null 或用java
我正在尝试使用elasticsearch搜索产品。例如,如果产品是汽车,它将有一些字段,如“颜色”,“品牌”,“型号”,“公里”,……如果它是衣服,它将只有“颜色”,“尺寸”,……我想在弹性索引所有这些信息,以便能够搜索公里在aaa公里和bbb公里之间的汽车,和/或xxxx型号,相同的衣服或任何其他产品。 如何在elasticsearch中创建这样的字段?我希望所有的产品在相同的索引,这样用户可以
问题内容: 我在查询需要在SUM DISTINCT Rows处苦苦挣扎。一定有办法做到这一点…但我迷路了。 这是我得到的: 这给了我34行,为每个属于userid4的县提供了不同的人口数量,但是我怎么得到PopEstimate2005和EstimatesBase2000的总和? 类似的东西(但这不是合法的查询): 当然,将Zipcodes.CountyID添加到GroupBy的末尾后,我又回到了3
可以对搜索结果进行过滤,只显示包含特定字段值的文档。也可以创建否定过滤器,排除包含特定字段值的文档。 从 Fields 表或 Documents 表中选择要添加的字段过滤器。除了可以创建积极字段和消极过滤器外,Documents 表还可以过滤某一字段是否存在。使用过的过滤器会在 Query 栏下方显示。消极过滤器用红色显示。 从 Fields 列表中添加一个过滤器: 点击想要过滤的字段名。这里显示
本文向大家介绍AngularJS实现根据不同条件显示不同控件,包括了AngularJS实现根据不同条件显示不同控件的使用技巧和注意事项,需要的朋友参考一下 由于项目需求,需要实现根据不同条件显示不同控件的功能。具体要求如下图所示: 即当选择“每单固定减”时,下方只显示“减免金额”一栏; 当选择“每单固定折扣”时,下方只显示“折扣比例”一栏; 当选择“每单满额减”时,下方只显示“满.