|
@@ -163,28 +163,27 @@ public class ParkSystemServiceImpl implements ParkSystemService {
|
|
|
Map<String, List<Map>> insertMap = new HashMap<>(16);
|
|
|
dataItems.forEach(x -> {
|
|
|
String parkCode = x.get("parkCode").toString();
|
|
|
+ String format = LocalDateTimeUtil.format(ParkUtils.getResultLocalDateTime(x, "feesTime"), DatePattern.PURE_DATE_PATTERN);
|
|
|
List<Map> maps = new ArrayList<>();
|
|
|
- if (insertMap.containsKey(parkCode)) {
|
|
|
- maps = insertMap.get(parkCode);
|
|
|
+ if (insertMap.containsKey(parkCode + "_" + format)) {
|
|
|
+ maps = insertMap.get(parkCode + "_" + format);
|
|
|
}
|
|
|
maps.add(x);
|
|
|
- insertMap.put(parkCode, maps);
|
|
|
+ insertMap.put(parkCode + "_" + format, maps);
|
|
|
});
|
|
|
if (MapUtil.isNotEmpty(insertMap)) {
|
|
|
- insertMap.keySet().forEach(key -> insertMap.get(key).forEach(res -> {
|
|
|
- res.put("feesTime", res.get("feesTime").toString().split("\\.")[0]);
|
|
|
- String format = LocalDateTimeUtil.format(ParkUtils.getResultLocalDateTime(res, "feesTime"), DatePattern.PURE_DATE_PATTERN);
|
|
|
+ insertMap.keySet().forEach(key -> {
|
|
|
Query query = new Query();
|
|
|
- query.addCriteria(Criteria.where("_id").is(key + "_" + format));
|
|
|
+ query.addCriteria(Criteria.where("_id").is(key));
|
|
|
Update update = new Update();
|
|
|
- JSONObject obj = mongoTemplate.findById(key + "_" + format, JSONObject.class, "parkCharge");
|
|
|
+ JSONObject obj = mongoTemplate.findById(key, JSONObject.class, "parkCharge");
|
|
|
JSONArray data = obj != null ? obj.getJSONArray("data") : new JSONArray();
|
|
|
data.addAll(insertMap.get(key));
|
|
|
List<Map> feesTime = ParkUtils.sortDateList(data, "feesTime", true);
|
|
|
update.set("data", feesTime);
|
|
|
update.set("count", feesTime.size());
|
|
|
mongoTemplate.upsert(query, update, "parkCharge");
|
|
|
- }));
|
|
|
+ });
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -195,15 +194,14 @@ public class ParkSystemServiceImpl implements ParkSystemService {
|
|
|
*/
|
|
|
@Override
|
|
|
public void parkServiceInfo(Map params) {
|
|
|
- Map<String, List<Map>> insertMap = ParkUtils.getInsertMap(params);
|
|
|
+ Map<String, List<Map>> insertMap = ParkUtils.getInsertMap(params, "operateTime");
|
|
|
String pno = params.get("pno").toString();
|
|
|
if (MapUtil.isNotEmpty(insertMap)) {
|
|
|
- insertMap.keySet().forEach(key -> insertMap.get(key).forEach(res -> {
|
|
|
- String format = LocalDateTimeUtil.format(ParkUtils.getResultLocalDateTime(res, "operateTime"), DatePattern.PURE_DATE_PATTERN);
|
|
|
+ insertMap.keySet().forEach(key -> {
|
|
|
Query query = new Query();
|
|
|
- query.addCriteria(Criteria.where("_id").is(key + "_" + format));
|
|
|
+ query.addCriteria(Criteria.where("_id").is(key));
|
|
|
Update update = new Update();
|
|
|
- JSONObject obj = mongoTemplate.findById(key + "_" + format, JSONObject.class, "parkServiceInfo");
|
|
|
+ JSONObject obj = mongoTemplate.findById(key, JSONObject.class, "parkServiceInfo");
|
|
|
JSONArray data = obj != null ? obj.getJSONArray("data") : new JSONArray();
|
|
|
data.addAll(insertMap.get(key));
|
|
|
List<Map> feesTime = ParkUtils.sortDateList(data, "operateTime", true);
|
|
@@ -214,7 +212,7 @@ public class ParkSystemServiceImpl implements ParkSystemService {
|
|
|
mongoTemplate.upsert(query, update, "parkServiceInfo");
|
|
|
// 校验是否存在异常数据
|
|
|
ParkUtils.insertException(key, feesTime, CommonConstants.SERVICE_INFO);
|
|
|
- }));
|
|
|
+ });
|
|
|
}
|
|
|
}
|
|
|
|