Commit 89e3d34b3c2ea25ed5a693b22ed3938395f2f9f5

Authored by litao@lymsh.com
1 parent b12dceae3f

bbbbbb

Showing 2 changed files with 18 additions and 69 deletions

platform-common/src/main/java/com/lyms/platform/common/utils/DateUtil.java View file @ 89e3d34
... ... @@ -1346,6 +1346,14 @@
1346 1346 public static List<Map<String, Date>> getRange(Date start, Date end) {
1347 1347 List<Map<String, Date>> restList = new ArrayList<>();
1348 1348 if(start != null && end != null) {
  1349 +
  1350 + Calendar calendar = Calendar.getInstance(); // 如果是每月的第一天 这里加一天 方便日期 < 对比
  1351 + calendar.setTime(end);
  1352 + System.out.println(calendar.get(Calendar.DAY_OF_MONTH));
  1353 + if(calendar.get(Calendar.DAY_OF_MONTH) == 1) {
  1354 + end = addDay(end, 1);
  1355 + }
  1356 +
1349 1357 List<Date> dates = getMonthBetween(start, end);
1350 1358 if(dates.size() == 1) {
1351 1359 Map<String, Date> temp = new HashMap<>();
1352 1360  
1353 1361  
... ... @@ -1432,14 +1440,14 @@
1432 1440 }
1433 1441  
1434 1442 public static void main(String[] args) {
1435   - /* List<Map<String, Date>> monthBetween = getRange(parseYMD("2017-1-11"), parseYMD("2017-3-11"));
  1443 + List<Map<String, Date>> monthBetween = getRange(parseYMD("2017-1-11"), parseYMD("2017-4-1"));
1436 1444 for (Map<String, Date> map : monthBetween) {
1437 1445 System.out.print("cname>> " + getyyyy_mm(map.get("cname")));
1438 1446 System.out.print(" start>> " + getyyyy_MM_dd(map.get("start")));
1439 1447 System.out.println(" end>> " + getyyyy_MM_dd(map.get("end")));
1440   - }*/
  1448 + }
1441 1449  
1442   - Date yesterday = DateUtil.getYesterday();
  1450 + /* Date yesterday = DateUtil.getYesterday();
1443 1451 System.out.println(yesterday.toLocaleString());
1444 1452 System.out.println(getBetweenDay(parseDate("2017-12-19"), 7));
1445 1453  
... ... @@ -1462,7 +1470,7 @@
1462 1470 System.out.println("上一年的第一天: " + getYear(date, -1, 1).toLocaleString());
1463 1471 System.out.println("上一年的最后一天: " + getYear(date, -1, 0).toLocaleString());
1464 1472 System.out.println(getBetweenDay(7));
1465   - System.out.println(date.getTime());
  1473 + System.out.println(date.getTime());*/
1466 1474 }
1467 1475  
1468 1476 }
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/ReportServiceImpl.java View file @ 89e3d34
... ... @@ -206,9 +206,7 @@
206 206 List<Map<String, Object>> series = new ArrayList<>();
207 207 List<String> legend = Arrays.asList("建档总数");
208 208 List<Integer> bar = new ArrayList<>();
209   - List<Object> line = new ArrayList<>();
210 209 Map<String, Object> barMap = new HashMap<>();
211   - Map<String, Object> lineMap = new HashMap<>();
212 210 List<Map<String, Date>> range = DateUtil.getRange(startDate, endDate);
213 211  
214 212 List<String> patientIds = new ArrayList<>();
... ... @@ -246,8 +244,9 @@
246 244 } else {
247 245 Map<String, Integer> temp = new HashMap<>();
248 246 for (Map<String, Date> dateMap : range) {
249   - if(patient.getBookbuildingDate().getTime() >= dateMap.get("start").getTime()
250   - && patient.getBookbuildingDate().getTime() <= dateMap.get("end").getTime()) {
  247 + System.out.println(patient.getBookbuildingDate().toLocaleString() + " " + dateMap.get("start").toLocaleString() + " : " + dateMap.get("end").toLocaleString());
  248 + if(patient.getBookbuildingDate().getTime() >= dateMap.get("start").getTime()
  249 + && patient.getBookbuildingDate().getTime() < dateMap.get("end").getTime()) {
251 250 temp.put(DateUtil.getyyyy_mm(dateMap.get("cname")), 1);
252 251 break;
253 252 }
... ... @@ -362,7 +361,7 @@
362 361 barMap.put("name", "建档总数");
363 362 series.add(barMap);
364 363  
365   - if(statistType == 1) {
  364 + /*if(statistType == 1) {
366 365 Integer count = 0;
367 366 for (Integer num : bar) {
368 367 count += num;
369 368  
... ... @@ -370,69 +369,11 @@
370 369 for (Integer num : bar) {
371 370 line.add(MathUtil.getProportion(num, count));
372 371 }
373   - }/* else if(statistType == 2) {
374   - Date start = null;
375   - Date end = null;
376   - Date beforeStart = null;
377   - Date beforeEnd = null;
378   - switch (statistVal) { //1=月 2=季度 3=半年 4=年
379   - case 1:
380   - start = DateUtil.getMonthDay(startDate, 0, 1);
381   - end = DateUtil.getMonthDay(startDate, 0, 0);
382   - beforeStart = DateUtil.getMonthDay(startDate, -1, 1);
383   - beforeEnd = DateUtil.getMonthDay(startDate, -1, 0);
384   - break;
385   - case 2:
386   - start = DateUtil.getQuartDay(startDate, 0, 1);
387   - end = DateUtil.getQuartDay(startDate, 0, 0);
388   - beforeStart = DateUtil.getQuartDay(startDate, -1, 1);
389   - beforeEnd = DateUtil.getQuartDay(startDate, -1, 0);
390   - break;
391   - case 3:
392   - start = DateUtil.getHalfDay(startDate, 0, 1);
393   - end = DateUtil.getHalfDay(startDate, 0, 0);
394   - beforeStart = DateUtil.getHalfDay(startDate, -1, 1);
395   - beforeEnd = DateUtil.getHalfDay(startDate, -1, 0);
396   - break;
397   - case 4:
398   - start = DateUtil.getYear(startDate, 0, 1);
399   - end = DateUtil.getYear(startDate, 0, 0);
400   - beforeStart = DateUtil.getYear(startDate, -1, 1);
401   - beforeEnd = DateUtil.getYear(startDate, -1, 0);
402   - break;
403   - }
404   - if(start != null && end != null && beforeStart != null && beforeEnd != null) {
405   - List<Map<String, Object>> hospitalInfos = mongoUtil.getHospitals(userId, provinceId, cityId, aredId, streetId);
406   - List<String> hospitalIds = CollectionUtils.getListByKey(hospitalInfos, "id");
407   - Criteria c = new Criteria();
408   - c.and("hospitalId").in(hospitalIds).and("yn").ne(0).and("enable").ne("2").and("buildType").ne(1);
409   - if(startDate != null && endDate != null) {
410   - c.and("bookbuildingDate").gte(start).lt(DateUtil.addDay(end, 1));
411   - }
412   -
413   -
414   - Integer nowCount = 0;
415   - Integer beforeCount = 0;
416   - GroupOperation groupOperation = Aggregation.group("hospitalId").count().as("count");
417   - Aggregation agg = Aggregation.newAggregation(Patients.class, Aggregation.match(c), groupOperation);
418   - AggregationResults<Map> results = mongoTemplate.aggregate(agg, Patients.class, Map.class);
419   - List<Map> mappedResults = results.getMappedResults();
420   - for (Map mappedResult : mappedResults) {
421   - xDatas.add(couponMapper.findHospitalNameById((String) mappedResult.get("_id")));
422   - bar.add((Integer) mappedResult.get("count"));
423   - }
424   -
425   -// titleList.add("医院名称");
426   -// titleList.add("统计指标(人)");
427   -// for (Map<String, Date> map : range) {
428   -// titleList.add(DateUtil.getyyyy_mm(map.get("cname")));
429   -// }
430   - }
431   - }*/
  372 + }
432 373 lineMap.put("data", line);
433 374 lineMap.put("type", "line");
434 375 lineMap.put("name", "建档总数");
435   - series.add(lineMap);
  376 + series.add(lineMap);*/
436 377  
437 378  
438 379 restMap.put("legend", legend);