// 收银统计按照天周月查询
@Override
public ResponseEntity<?> StatisticsCashier(Integer type) {
// 天
Map map = new HashMap<>();
Map map2 = new HashMap<>();
Map map3 = new TreeMap(new Comparator() {
public int compare(String obj1, String obj2) {
// 降序排序
return obj2.compareTo(obj1);
}
});
List> list2 = new ArrayList<>();
try {
// 判断type值1按日2按周3按月
if (type == 1) {
List<Map<String, Object>> list = iCashierDao.StatisticsCashierbydate();
for (int i = 0; i < list.size(); i++) {
map2.put("dtime", list.get(i).get("dtime").toString());
map2.put("cu", list.get(i).get("cu").toString());
System.out.println("map2" + map2);
}
for (int i = 8; i <= 21; i++) {
if (i < 10) {
map3.put("dtime", "0" + String.valueOf(i));
map3.put("cu", String.valueOf(0));
} else {
map3.put("dtime", String.valueOf(i));
map3.put("cu", String.valueOf(0));
}
System.out.println("map3" + map3);
}
// 合并两个map
map3.putAll(map2);
list2.add(map3);
return new ResponseEntity<List<Map<String, String>>>().setState(Constants.SUCCESS).setData(list2)
.setMsg("按天获取数据成功");
} else {
return new ResponseEntity<Map<String, Object>>().setState(Constants.FAILED).setData(map)
.setMsg("输入参数有误");
}
说明一下 这个map打印的时候 一直都是打印最后一条记录。应该是map不允许这样存数据,将之前的数据都覆盖了的。 求指教