Update PelayananPasienServiceImpl.java
Pembuatan method stream data logbook grouping dan jumlah kegiatan per tanggal
This commit is contained in:
parent
ea577a8a6a
commit
bf4fdefc6a
@ -2108,21 +2108,40 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
private List<Map<String, Object>> groupingTanggalRemun(
|
private List<Map<String, Object>> groupingTanggalRemun(List<Map<String, Object>> listData) {
|
||||||
List<Integer> listIdProduk, List<String> listPersenJasa, List<Double> listHargaJual,
|
Map<Integer, Map<String, Map<Double, Map<Integer, Map<String, List<Map<String, Object>>>>>>> collectTanggal = listData
|
||||||
List<Integer> listIdKelompokPasien, List<String> listTanggal, List<Map<String, Object>> listData) {
|
.stream()
|
||||||
|
.collect(Collectors.groupingBy(o1 -> Integer.parseInt(o1.get("idProduk").toString()),
|
||||||
|
Collectors.groupingBy(o2 -> o2.get("persenJasa").toString(),
|
||||||
|
Collectors.groupingBy(o3 -> Double.parseDouble(o3.get("hargaJual").toString()),
|
||||||
|
Collectors.groupingBy(
|
||||||
|
o4 -> Integer
|
||||||
|
.parseInt(o4.get("idKelompokPasien").toString()),
|
||||||
|
Collectors.groupingBy(o5 -> o5.get("tanggal").toString()))))));
|
||||||
List<Map<String, Object>> result = new ArrayList<>();
|
List<Map<String, Object>> result = new ArrayList<>();
|
||||||
Map<Integer, Map<String, Map<Double, Map<Integer, Map<String, DoubleSummaryStatistics>>>>> collected =
|
collectTanggal.forEach((k1, v1) -> v1
|
||||||
listData.stream().collect(Collectors.groupingBy(o1 -> Integer.parseInt(o1.get("idProduk").toString()),
|
.forEach((k2, v2) -> v2.forEach((k3, v3) -> v3.forEach((k4, v4) -> v4.forEach((k5, v5) -> {
|
||||||
Collectors.groupingBy(o2 -> o2.get("persenJasa").toString(),
|
HashMap<String, Object> map = new HashMap<>();
|
||||||
Collectors.groupingBy(o3 -> Double.parseDouble(o3.get("hargaJual").toString()),
|
map.put("idProduk", k1);
|
||||||
Collectors.groupingBy(o4 -> Integer.parseInt(o4.get("idKelompokPasien").toString()),
|
map.put("persenJasa", k2);
|
||||||
Collectors.groupingBy(o5 -> o5.get("tanggal").toString(),
|
map.put("hargaJual", k3);
|
||||||
Collectors.summarizingDouble(s1 -> Double.parseDouble(s1.get("jumlah").toString()))))))));
|
map.put("idKelompokPasien", k4);
|
||||||
collected.forEach((k,v) -> {
|
map.put("tanggal", k5);
|
||||||
|
List<String> listNorecs = v5.stream().map(e -> e.get("idPelayananPasien").toString())
|
||||||
});
|
.collect(Collectors.toList());
|
||||||
return null;
|
map.put("listNorecs", listNorecs);
|
||||||
|
DoubleSummaryStatistics jumlah = v5.stream()
|
||||||
|
.collect(Collectors.summarizingDouble(e -> Double.parseDouble(e.get("jumlah").toString())));
|
||||||
|
map.put("jumlah", Double.parseDouble(jumlah.toString()));
|
||||||
|
Optional<Map<String, Object>> first = v5.stream().findFirst();
|
||||||
|
first.ifPresent(e -> {
|
||||||
|
map.put("namaProduk", e.get("namaProduk").toString());
|
||||||
|
map.put("kelompokPasien", e.get("kelompokPasien").toString());
|
||||||
|
map.put("hargaJasa", Double.parseDouble(e.get("hargaJasa").toString()));
|
||||||
|
});
|
||||||
|
result.add(map);
|
||||||
|
})))));
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user