From 2afa12abcd916ccd0af65ddb79869543d6b97003 Mon Sep 17 00:00:00 2001 From: liquanyu Date: Fri, 23 Dec 2016 15:57:56 +0800 Subject: [PATCH] =?UTF-8?q?=E5=84=BF=E7=AB=A5=E7=BB=9F=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/lyms/platform/common/utils/DateUtil.java | 8 +++++++- .../operate/web/controller/TestController.java | 2 +- .../platform/operate/web/utils/GrowthCountTask.java | 18 ++++++++++-------- 3 files changed, 18 insertions(+), 10 deletions(-) diff --git a/platform-common/src/main/java/com/lyms/platform/common/utils/DateUtil.java b/platform-common/src/main/java/com/lyms/platform/common/utils/DateUtil.java index c8803b7..6db064a 100644 --- a/platform-common/src/main/java/com/lyms/platform/common/utils/DateUtil.java +++ b/platform-common/src/main/java/com/lyms/platform/common/utils/DateUtil.java @@ -7,9 +7,11 @@ import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; public class DateUtil { - + private static Lock lock = new ReentrantLock(); public static SimpleDateFormat dd = new SimpleDateFormat("dd"); public static SimpleDateFormat ymd = new SimpleDateFormat("yyyyMMdd"); public static SimpleDateFormat y_m_d = new SimpleDateFormat("yyyy-MM-dd"); @@ -215,10 +217,14 @@ public class DateUtil { if (s == null) { return null; } + try { + lock.lock(); return y_m_d.parse(s); } catch (Exception e) { return null; + }finally { + lock.unlock(); } } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java index c520ff2..99e0cde 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java @@ -776,7 +776,7 @@ public class TestController { String weight = checkModel.getWeight(); if (com.lyms.platform.common.utils.StringUtils.isNotEmpty(weight)) { - String value = babyCheckFacade.getGrowthValue(birth,Double.parseDouble(weight),babyModel.getSex(),3); + String value = babyCheckFacade.getGrowthValue(birth,Double.parseDouble(weight),babyModel.getSex(),0); checkModel.setWeightEvaluate(value); } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/GrowthCountTask.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/GrowthCountTask.java index a4acdbf..ad378d0 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/GrowthCountTask.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/GrowthCountTask.java @@ -1,11 +1,9 @@ package com.lyms.platform.operate.web.utils; -import com.lyms.platform.biz.service.BabyBookbuildingService; import com.lyms.platform.biz.service.BabyCheckService; import com.lyms.platform.common.utils.ExceptionUtils; import com.lyms.platform.operate.web.result.BabyGrowthCountResult; import com.lyms.platform.query.BabyCheckModelQuery; -import com.lyms.platform.query.BabyModelQuery; import org.apache.commons.collections.CollectionUtils; import java.util.ArrayList; @@ -34,7 +32,7 @@ public class GrowthCountTask{ List results = new ArrayList<>(); if (CollectionUtils.isNotEmpty(growth)) { - int batchSize = 1; + int batchSize = 2; int end = 0; List futures = new ArrayList<>(); for (int i = 0; i < growth.size(); i += batchSize) { @@ -73,13 +71,17 @@ public class GrowthCountTask{ Future f = pool.submit(c); futures.add(f); } - for (Future f : futures) { - try { - results.addAll((List) f.get(30, TimeUnit.SECONDS)); - } catch (Exception e) { - ExceptionUtils.catchException(e, "baby growth count"); + if (CollectionUtils.isNotEmpty(futures)) + { + for (Future f : futures) { + try { + results.addAll((List) f.get(30, TimeUnit.SECONDS)); + } catch (Exception e) { + ExceptionUtils.catchException(e, "baby growth count"); + } } } + } return results; -- 1.8.3.1