Commit 71577ce449fed8e84785cb9031c80d528e967f32

Authored by jiangjiazhi

Merge remote-tracking branch 'origin/master'

Showing 8 changed files

platform-operate-api/src/main/java/com/lyms/platform/operate/web/Test.java View file @ 71577ce
... ... @@ -7,6 +7,7 @@
7 7 import com.lyms.platform.permission.service.UsersService;
8 8 import com.lyms.platform.pojo.Patients;
9 9 import com.lyms.platform.query.*;
  10 +import org.apache.commons.lang.*;
10 11 import org.apache.commons.lang.math.*;
11 12 import org.springframework.context.ApplicationContext;
12 13 import org.springframework.context.support.ClassPathXmlApplicationContext;
... ... @@ -14,10 +15,7 @@
14 15 import org.springframework.data.mongodb.core.aggregation.AggregationOperation;
15 16 import org.springframework.data.mongodb.core.query.Update;
16 17  
17   -import java.util.ArrayList;
18   -import java.util.Calendar;
19   -import java.util.Date;
20   -import java.util.List;
  18 +import java.util.*;
21 19  
22 20 /**
23 21 * Created by Administrator on 2016/8/22 0022.
24 22  
25 23  
26 24  
... ... @@ -28,19 +26,53 @@
28 26 // String id="1";
29 27 // System.out.print(String.format("%07d", id));
30 28  
31   - String addr="四川省华蓥市双河街道办事处民太村";
  29 +// String addr="四川省华蓥市双河街道办事处民太村";
  30 +//
  31 +// PatientsQuery patientsQuery = new PatientsQuery();
  32 +// patientsQuery.setYn(YnEnums.YES.getId());
  33 +// patientsQuery.setBuildType(1);
  34 +// //查询主档案
  35 +// patientsQuery.setExtEnable(false);
  36 +// patientsQuery.setCardNo("aaaa");
  37 +// patientsQuery.setPid("aaaa");
  38 +// System.out.println(patientsQuery.convertToQuery().convertToMongoQuery());
  39 +//
  40 +//
  41 +// System.out.print("5878388d0cf235c11f845399".length());
32 42  
33   - PatientsQuery patientsQuery = new PatientsQuery();
34   - patientsQuery.setYn(YnEnums.YES.getId());
35   - patientsQuery.setBuildType(1);
36   - //查询主档案
37   - patientsQuery.setExtEnable(false);
38   - patientsQuery.setCardNo("aaaa");
39   - patientsQuery.setPid("aaaa");
40   - System.out.println(patientsQuery.convertToQuery().convertToMongoQuery());
41 43  
  44 + String str = "{\"yesOrNo\":\"yes\",\"26cac65c-a040-4898-b7da-8deed3ba0ec3\":{\"checkBox\":true,\"proName\":\"循环系统类\",\"selected\":[\"6c46f0c0-97f1-4b72-a11c-98eacfff9a8f\",\"3beb4592-0fda-4041-b148-97d315fccb94\",\"87f35a26-379d-4a05-8ab8-01e634835474\",\"17e9c0ff-92e6-4f48-9f02-264711a8689d\",\"fd51e86b-d3ef-4b38-9dc3-174cf5431855\",\"f14e3084-2ad5-4e25-a634-196e96949ef3\",\"f9acf716-50b0-4b45-bebc-9d21983c616f\",\"31f9dcd6-d7f0-42b5-bd7d-72dd7fe3b01a\",\"322ad477-8130-46d0-a67c-de1b4dc9c640\",\"e7582017-b94c-46ed-b7fd-e36c747da13a\",\"04f8bb8b-f074-41bc-8f41-d3bedb65874b\"]},\"57e4bedbf0f0baa1bee496cd\":{\"checkBox\":true,\"proName\":\"其他\",\"selected\":\"其他既往史\"}}";
42 45  
43   - System.out.print("5878388d0cf235c11f845399".length());
  46 + //既往史
  47 + String pastHistory = "";
  48 + if (org.apache.commons.lang.StringUtils.isNotEmpty(str))
  49 + {
  50 + Map map = JsonUtil.str2Obj(str, Map.class);
  51 + String yesOrNo = map.get("yesOrNo") == null ? "" : map.get("yesOrNo").toString();
  52 + if ("no".equals(yesOrNo))
  53 + {
  54 + pastHistory = "无";
  55 + }
  56 + else if ("yes".equals(yesOrNo))
  57 + {
  58 +
  59 + for(Object key : map.keySet())
  60 + {
  61 + Object obj = map.get(key);
  62 + if (obj != null && !"yes".equals(obj.toString()))
  63 + {
  64 + System.out.println(obj.toString());
  65 +// Map itemMap = JsonUtil.str2Obj(obj.toString(), Map.class);
  66 +// if (itemMap != null && itemMap.size() > 0)
  67 +// {
  68 +// String proName = itemMap.get("proName") == null ? "" : itemMap.get("proName").toString();
  69 +// String selected = itemMap.get("selected") == null ? "" : itemMap.get("selected").toString();
  70 +// }
  71 + }
  72 + }
  73 + }
  74 + }
  75 + System.out.println(pastHistory);
44 76 }
45 77 }
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java View file @ 71577ce
... ... @@ -31,7 +31,9 @@
31 31 import org.apache.commons.lang.math.*;
32 32 import org.apache.commons.lang.math.NumberUtils;
33 33 import org.springframework.beans.factory.annotation.Autowired;
  34 +import org.springframework.beans.factory.annotation.Qualifier;
34 35 import org.springframework.data.domain.Sort;
  36 +import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
35 37 import org.springframework.stereotype.Component;
36 38  
37 39 import javax.servlet.http.HttpServletResponse;
38 40  
... ... @@ -114,11 +116,11 @@
114 116 private OrganizationGroupsFacade groupsFacade;
115 117  
116 118  
  119 + @Autowired
  120 + @Qualifier("commonThreadPool")
  121 + private ThreadPoolTaskExecutor commonThreadPool;
117 122  
118 123  
119   - private static ExecutorService pool = Executors.newFixedThreadPool(10);
120   -
121   -
122 124 public BaseResponse getBabyBase(String babyId) {
123 125 //查询儿童的基本信息
124 126 BabyBasicResult base = new BabyBasicResult();
... ... @@ -1635,7 +1637,7 @@
1635 1637 organizationService,
1636 1638 babyCheckFacade,
1637 1639 ms,request.getIsArea(),hospitalName);
1638   - Future f = pool.submit(c);
  1640 + Future f = commonThreadPool.submit(c);
1639 1641 futures.add(f);
1640 1642 }
1641 1643 if (CollectionUtils.isNotEmpty(futures))
... ... @@ -2197,7 +2199,7 @@
2197 2199 }
2198 2200 };
2199 2201  
2200   - Future f = pool.submit(c);
  2202 + Future f = commonThreadPool.submit(c);
2201 2203 futures.add(f);
2202 2204 }
2203 2205 for (Future f : futures) {
... ... @@ -2482,7 +2484,7 @@
2482 2484 }
2483 2485 };
2484 2486  
2485   - Future f = pool.submit(c);
  2487 + Future f = commonThreadPool.submit(c);
2486 2488 futures.add(f);
2487 2489 }
2488 2490 if (CollectionUtils.isNotEmpty(futures))
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/CorrectDataFacade.java View file @ 71577ce
... ... @@ -12,6 +12,8 @@
12 12 import org.slf4j.Logger;
13 13 import org.slf4j.LoggerFactory;
14 14 import org.springframework.beans.factory.annotation.Autowired;
  15 +import org.springframework.beans.factory.annotation.Qualifier;
  16 +import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
15 17 import org.springframework.stereotype.Component;
16 18  
17 19 import java.util.ArrayList;
18 20  
... ... @@ -37,8 +39,11 @@
37 39 @Autowired
38 40 private AntenatalExaminationService anExService;
39 41  
40   - private ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(5, 10, 1, TimeUnit.MINUTES, new LinkedBlockingQueue<Runnable>(5000));
  42 + @Autowired
  43 + @Qualifier("commonThreadPool")
  44 + private ThreadPoolTaskExecutor commonThreadPool;
41 45  
  46 +
42 47 /**
43 48 *
44 49 * 纠正数据
... ... @@ -60,7 +65,7 @@
60 65 if (end > patientses.size()) {
61 66 end = patientses.size();
62 67 }
63   - threadPoolExecutor.submit(new CorrectDataWorker(patientses.subList(i, end),postReviewService,patientsService,anExService,antExFacade,counter));
  68 + commonThreadPool.submit(new CorrectDataWorker(patientses.subList(i, end),postReviewService,patientsService,anExService,antExFacade,counter));
64 69 }
65 70 logger.info("hand hospitalId :" +hospitalId+", update count "+counter.get());
66 71 }
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientFacade.java View file @ 71577ce
... ... @@ -27,6 +27,8 @@
27 27 import org.slf4j.Logger;
28 28 import org.slf4j.LoggerFactory;
29 29 import org.springframework.beans.factory.annotation.Autowired;
  30 +import org.springframework.beans.factory.annotation.Qualifier;
  31 +import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
30 32 import org.springframework.stereotype.Component;
31 33 import org.springframework.util.StopWatch;
32 34  
33 35  
... ... @@ -82,8 +84,11 @@
82 84 @Autowired
83 85 private OrganizationGroupsFacade groupsFacade;
84 86  
85   - private ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(15, 20, 1, TimeUnit.MINUTES, new LinkedBlockingQueue<Runnable>(5000));
  87 + @Autowired
  88 + @Qualifier("commonThreadPool")
  89 + private ThreadPoolTaskExecutor commonThreadPool;
86 90  
  91 +
87 92 /**
88 93 * 修改产妇的社区
89 94 *
... ... @@ -218,6 +223,9 @@
218 223 patientsQuery.setPhone(riskPatientsQueryRequest.getPhone());
219 224 patientsQuery.setCardNo(riskPatientsQueryRequest.getCardNo());
220 225  
  226 + //设置为孕妇
  227 + patientsQuery.setType(type);
  228 +
221 229 //add lqy 高危孕产妇统计需求
222 230 if (com.lyms.platform.common.utils.StringUtils.isNotEmpty(riskPatientsQueryRequest.getType()))
223 231 {
... ... @@ -233,8 +241,7 @@
233 241 }
234 242 }
235 243  
236   - //设置为孕妇
237   - patientsQuery.setType(type);
  244 +
238 245 patientsQuery.setLikeName(riskPatientsQueryRequest.getName());
239 246 patientsQuery.sethScoreStart(riskPatientsQueryRequest.getStrtHScore());
240 247 patientsQuery.sethScoreEnd(riskPatientsQueryRequest.getEndHScore());
... ... @@ -516,7 +523,7 @@
516 523 if (end > patientses.size()) {
517 524 end = patientses.size();
518 525 }
519   - listFuture.add(threadPoolExecutor.submit(new QuanChanPatientWorker(patientses.subList(i, end), hospital, usersService, postReviewService, matDeliverService, patientsService, organizationService, basicConfigService)));
  526 + listFuture.add(commonThreadPool.submit(new QuanChanPatientWorker(patientses.subList(i, end), hospital, usersService, postReviewService, matDeliverService, patientsService, organizationService, basicConfigService)));
520 527 }
521 528 for (Future f : listFuture) {
522 529 try {
... ... @@ -539,7 +546,7 @@
539 546 if (end > patientses.size()) {
540 547 end = patientses.size();
541 548 }
542   - listFuture.add(threadPoolExecutor.submit(new QuanPatientWorker(patientses.subList(i, end), usersService, hospital, antExService, basicConfigService, patientsService, organizationService)));
  549 + listFuture.add(commonThreadPool.submit(new QuanPatientWorker(patientses.subList(i, end), usersService, hospital, antExService, basicConfigService, patientsService, organizationService)));
543 550 }
544 551 for (Future f : listFuture) {
545 552 try {
... ... @@ -567,7 +574,7 @@
567 574 if (end > patientses.size()) {
568 575 end = patientses.size();
569 576 }
570   - listFuture.add(threadPoolExecutor.submit(new WorkHR(patientses.subList(i, end), usersService, hospital, basicConfigService, antExService, patientsService, organizationService)));
  577 + listFuture.add(commonThreadPool.submit(new WorkHR(patientses.subList(i, end), usersService, hospital, basicConfigService, antExService, patientsService, organizationService)));
571 578 }
572 579 for (Future f : listFuture) {
573 580 try {
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PredictedStatisticsFacade.java View file @ 71577ce
... ... @@ -70,7 +70,7 @@
70 70 patientsQuery.setDueDateEnd(endDate);
71 71 patientsQuery.setNeed(YnEnums.YES.name());
72 72 patientsQuery.setYn(YnEnums.YES.getId());
73   - patientsQuery.setNotEnable("2");
  73 + //patientsQuery.setNotEnable("2"); 王平说的
74 74 patientsQuery.setHospitalId(autoMatchFacade.getHospitalId(predictedStatisticsRequest.getOperatorId()));
75 75 List<Integer> typeList = new ArrayList<>();
76 76 typeList.add(1);
... ... @@ -135,7 +135,7 @@
135 135 Date endDate = DateUtil.getMonthEndTime(temp);
136 136 patientsQuery.setDueDateStart(startDate);
137 137 patientsQuery.setDueDateEnd(endDate);
138   - patientsQuery.setNotEnable("2");
  138 + //patientsQuery.setNotEnable("2"); 王平说的
139 139 int count = patientsService.queryPatientCount(patientsQuery);
140 140 SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM");
141 141 String dateStr = simpleDateFormat.format(new Date());
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/RiskReportFacade.java View file @ 71577ce
... ... @@ -23,7 +23,9 @@
23 23 import com.lyms.platform.query.*;
24 24 import org.apache.commons.collections.CollectionUtils;
25 25 import org.springframework.beans.factory.annotation.Autowired;
  26 +import org.springframework.beans.factory.annotation.Qualifier;
26 27 import org.springframework.data.domain.Sort;
  28 +import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
27 29 import org.springframework.stereotype.Component;
28 30  
29 31 import java.text.DecimalFormat;
30 32  
... ... @@ -33,8 +35,11 @@
33 35 @Component
34 36 public class RiskReportFacade {
35 37  
36   - private static ExecutorService pool = Executors.newFixedThreadPool(4);
  38 + @Autowired
  39 + @Qualifier("commonThreadPool")
  40 + private ThreadPoolTaskExecutor commonThreadPool;
37 41  
  42 +
38 43 @Autowired
39 44 private PatientsService patientsService;
40 45  
... ... @@ -136,7 +141,7 @@
136 141 patientsService, levelConfig,
137 142 patientsQuery,
138 143 allPatientCount);
139   - Future f = pool.submit(c);
  144 + Future f = commonThreadPool.submit(c);
140 145 futures.add(f);
141 146 }
142 147  
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ViewFacade.java View file @ 71577ce
... ... @@ -1766,7 +1766,7 @@
1766 1766 if (StringUtils.isNotEmpty(checkModel.getBregma()))
1767 1767 {
1768 1768 Map map = JsonUtil.str2Obj(checkModel.getBregma(), Map.class);
1769   - String yesOrNo = map.get("yeaOrNo") == null ? "" : map.get("yeaOrNo").toString();
  1769 + String yesOrNo = map.get("yesOrNo") == null ? "" : map.get("yesOrNo").toString();
1770 1770 if ("yes".equals(yesOrNo))
1771 1771 {
1772 1772 bregma = "闭合";
1773 1773  
... ... @@ -1945,8 +1945,98 @@
1945 1945 return br;
1946 1946 }
1947 1947  
  1948 +
1948 1949 private ResidentsArchiveResult getResidentsPageResult(ResidentsArchiveModel model) {
1949 1950 ResidentsPageResult result = new ResidentsPageResult();
  1951 + result.setUsername(model.getUsername());
  1952 + result.setSex(SexEnum.getTextById(Integer.valueOf(model.getSex())));
  1953 + result.setBirthday(DateUtil.getyyyy_MM_dd(model.getBirthday()));
  1954 + result.setCountry(getBasicConfig(model.getCountryId()));
  1955 + result.setNation(getBasicConfig(model.getNationId()));
  1956 + result.setMarriage(FunvCommonUtil.getBaseicConfigByid(model.getMarriageId(), basicConfigService));
  1957 + result.setCertificateType(FunvCommonUtil.getBaseicConfigByid(model.getCertificateTypeId(), basicConfigService));
  1958 + result.setCertificateNum(model.getCertificateNum());
  1959 + result.setCensusType(FunvCommonUtil.getBaseicConfigByid(model.getLevelTypeId(), basicConfigService));
  1960 + result.setLevelType(FunvCommonUtil.getBaseicConfigByid(model.getLiveTypeId(), basicConfigService));
  1961 + result.setLevelType(FunvCommonUtil.getBaseicConfigByid(model.getLevelTypeId(), basicConfigService));
  1962 + result.setProfessionType(FunvCommonUtil.getBaseicConfigByid(model.getProfessionTypeId(), basicConfigService));
  1963 + result.setAge(DateUtil.getAge(model.getBirthday(), new Date()));
  1964 +
  1965 + result.setPhone(model.getPhone());
  1966 + result.setWorkUnit(model.getWorkUnit());
  1967 + //居住地
  1968 + String liveAddress = CommonsHelper.getResidence(model.getProvinceId(), model.getCityId(),
  1969 + model.getAreaId(), model.getStreetId(), model.getAddress(), basicConfigService);
  1970 +
  1971 + //户籍地址
  1972 + String addressRegister = CommonsHelper.getResidence(model.getProvinceRegisterId(), model.getCityRegisterId(),
  1973 + model.getAreaRegisterId(), model.getStreetRegisterId(), model.getAddressRegister(), basicConfigService);
  1974 +
  1975 + result.setAddressRegister(addressRegister);
  1976 + result.setLiveAddress(liveAddress);
  1977 + //既往史
  1978 + String pastHistory = "";
  1979 + if (StringUtils.isNotEmpty(model.getPastHistory()))
  1980 + {
  1981 + Map map = JsonUtil.str2Obj(model.getPastHistory(), Map.class);
  1982 + String yesOrNo = map.get("yesOrNo") == null ? "" : map.get("yesOrNo").toString();
  1983 + if ("no".equals(yesOrNo))
  1984 + {
  1985 + pastHistory = "无";
  1986 + }
  1987 + else if ("yes".equals(yesOrNo))
  1988 + {
  1989 +
  1990 + for(Object key : map.keySet())
  1991 + {
  1992 + Object obj = map.get(key);
  1993 + if (obj != null && !"yesOrNo".equals(obj.toString()))
  1994 + {
  1995 + Map itemMap = JsonUtil.str2Obj(obj.toString(), Map.class);
  1996 + if (itemMap != null && itemMap.size() > 0)
  1997 + {
  1998 + String proName = itemMap.get("proName") == null ? "" : itemMap.get("proName").toString();
  1999 + String selected = itemMap.get("selected") == null ? "" : itemMap.get("selected").toString();
  2000 + }
  2001 + }
  2002 + }
  2003 + }
  2004 + }
  2005 +
  2006 + result.setPastHistory(pastHistory);
  2007 +
  2008 +
  2009 +// //既往史
  2010 +// private String pastHistory;
  2011 +// //家族史
  2012 +// private String familyHistory;
  2013 +// //个人史
  2014 +// private String personalHistory;
  2015 +// //药物过敏史
  2016 +// private String ywgmHistory;
  2017 +// //现病史
  2018 +// private String presentHistory;
  2019 +
  2020 + result.setVcCardNo(model.getVcCardNo());
  2021 + if (com.lyms.platform.common.utils.StringUtils.isNotEmpty(model.getBuildDoctor())) {
  2022 + if ("a9e5507f-e7da-4ec6-b8db-9a1e4d1b7c29".equals(model.getBuildDoctor())) {
  2023 + result.setBuildDoctor("产科病房");
  2024 + }
  2025 + else
  2026 + {
  2027 + Users users = usersService.getUsers(Integer.parseInt(model.getBuildDoctor()));
  2028 + if (users!=null && users.getYn()==YnEnums.YES.getId()){
  2029 + String name = users.getName();
  2030 + result.setBuildDoctor(name);
  2031 + }
  2032 + }
  2033 + }
  2034 +
  2035 + result.setBuildDate(DateUtil.getyyyy_MM_dd(model.getBuildDay()));
  2036 + result.setId(model.getId());
  2037 +
  2038 +
  2039 +
1950 2040  
1951 2041 return null;
1952 2042 }
platform-operate-api/src/main/resources/spring/applicationContext.xml View file @ 71577ce
... ... @@ -60,7 +60,7 @@
60 60  
61 61 <bean id="commonThreadPool" class="org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor">
62 62 <!-- 核心线程数,默认为1 -->
63   - <property name="corePoolSize" value="10"/>
  63 + <property name="corePoolSize" value="20"/>
64 64  
65 65 <!-- 最大线程数,默认为Integer.MAX_VALUE -->
66 66 <property name="maxPoolSize" value="50" />