Commit b1d868025dafbd431941cfffd9ee720951d702ef

Authored by litao@lymsh.com
1 parent 89e3d34b3c

bbbbbb

Showing 2 changed files with 15 additions and 32 deletions

platform-common/src/main/java/com/lyms/platform/common/utils/DateUtil.java View file @ b1d8680
... ... @@ -1346,37 +1346,21 @@
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   -
1357 1349 List<Date> dates = getMonthBetween(start, end);
1358   - if(dates.size() == 1) {
  1350 + for (int i = 0; i < dates.size(); i++) {
1359 1351 Map<String, Date> temp = new HashMap<>();
1360   - temp.put("cname", dates.get(0));
1361   - temp.put("start", start);
1362   - temp.put("end", end);
1363   - restList.add(temp);
1364   - } else {
1365   - for (int i = 0; i < dates.size(); i++) {
1366   - Map<String, Date> temp = new HashMap<>();
1367   - temp.put("cname", dates.get(i));
1368   - if(i == 0) {
1369   - temp.put("start", start);
1370   - temp.put("end", dates.get(i + 1));
1371   - } else if(i == dates.size() - 1) {
1372   - temp.put("start", dates.get(dates.size() - 1));
1373   - temp.put("end", end);
1374   - } else {
1375   - temp.put("start", dates.get(i));
1376   - temp.put("end", dates.get(i + 1));
1377   - }
1378   - restList.add(temp);
  1352 + temp.put("cname", dates.get(i));
  1353 + if(i == 0) {
  1354 + temp.put("start", start);
  1355 + temp.put("end", dates.size() > 1 ? addDay(dates.get(1), -1) : end);
  1356 + } else if (i == dates.size() - 1) {
  1357 + temp.put("start", dates.get(dates.size() - 1));
  1358 + temp.put("end", end);
  1359 + } else {
  1360 + temp.put("start", dates.get(i));
  1361 + temp.put("end", addDay(dates.get(dates.size() - 1), -1));
1379 1362 }
  1363 + restList.add(temp);
1380 1364 }
1381 1365 }
1382 1366 return restList;
... ... @@ -1440,7 +1424,7 @@
1440 1424 }
1441 1425  
1442 1426 public static void main(String[] args) {
1443   - List<Map<String, Date>> monthBetween = getRange(parseYMD("2017-1-11"), parseYMD("2017-4-1"));
  1427 + List<Map<String, Date>> monthBetween = getRange(parseYMD("2017-1-11"), parseYMD("2017-3-1"));
1444 1428 for (Map<String, Date> map : monthBetween) {
1445 1429 System.out.print("cname>> " + getyyyy_mm(map.get("cname")));
1446 1430 System.out.print(" start>> " + getyyyy_MM_dd(map.get("start")));
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/ReportServiceImpl.java View file @ b1d8680
... ... @@ -236,7 +236,7 @@
236 236 for (Map<String, Date> dateMap : range) {
237 237 String cname = DateUtil.getyyyy_mm(dateMap.get("cname"));
238 238 if(patient.getBookbuildingDate().getTime() >= dateMap.get("start").getTime()
239   - && patient.getBookbuildingDate().getTime() < dateMap.get("end").getTime()) {
  239 + && patient.getBookbuildingDate().getTime() <= dateMap.get("end").getTime()) {
240 240 map.put(cname, map.containsKey(cname) ? map.get(cname) + 1 : 1);
241 241 break;
242 242 }
243 243  
... ... @@ -244,9 +244,8 @@
244 244 } else {
245 245 Map<String, Integer> temp = new HashMap<>();
246 246 for (Map<String, Date> dateMap : range) {
247   - System.out.println(patient.getBookbuildingDate().toLocaleString() + " " + dateMap.get("start").toLocaleString() + " : " + dateMap.get("end").toLocaleString());
248 247 if(patient.getBookbuildingDate().getTime() >= dateMap.get("start").getTime()
249   - && patient.getBookbuildingDate().getTime() < dateMap.get("end").getTime()) {
  248 + && patient.getBookbuildingDate().getTime() <= dateMap.get("end").getTime()) {
250 249 temp.put(DateUtil.getyyyy_mm(dateMap.get("cname")), 1);
251 250 break;
252 251 }