Commit 7a5c123f19935f926bbcf22dd5624134d48dfaa5

Authored by dongqin
1 parent af8cfd37ca

同步历史数据

Showing 5 changed files with 59 additions and 26 deletions

platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BookbuildingFacade.java View file @ 7a5c123
... ... @@ -2383,7 +2383,8 @@
2383 2383 Connection connection;
2384 2384 try {
2385 2385 Class.forName("oracle.jdbc.OracleDriver");
2386   - connection = DriverManager.getConnection("jdbc:oracle:thin:@121.17.120.149:1521:orcl", "LYMS_HENGSHUI_ZS_TEST44", "LYMS_HENGSHUI_ZS_TEST44");
  2386 + //connection = DriverManager.getConnection("jdbc:oracle:thin:@121.17.120.149:1521:orcl", "LYMS_HENGSHUI_ZS_TEST44", "LYMS_HENGSHUI_ZS_TEST44");
  2387 + connection = DriverManager.getConnection("jdbc:oracle:thin:@192.168.1.200:1521:prmi", "LYMS_HENGSHUI_ZHENGSHI", "lyms2018");
2387 2388 System.out.println("成功连接数据库");
2388 2389 } catch (ClassNotFoundException | SQLException e) {
2389 2390 throw new RuntimeException("class not find !", e);
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java View file @ 7a5c123
... ... @@ -18,10 +18,7 @@
18 18 import com.lyms.platform.operate.web.service.ITrackDownService;
19 19 import com.lyms.platform.operate.web.utils.CommonsHelper;
20 20 import com.lyms.platform.operate.web.utils.UnitConstants;
21   -import com.lyms.platform.operate.web.worker.ChildbearAgeWorker;
22   -import com.lyms.platform.operate.web.worker.DueOrgCountWorker;
23   -import com.lyms.platform.operate.web.worker.MatDeliverWorker;
24   -import com.lyms.platform.operate.web.worker.MaterDeliverWorker;
  21 +import com.lyms.platform.operate.web.worker.*;
25 22 import com.lyms.platform.permission.model.Organization;
26 23 import com.lyms.platform.permission.model.OrganizationQuery;
27 24 import com.lyms.platform.permission.model.Users;
... ... @@ -57,6 +54,8 @@
57 54 import java.util.*;
58 55 import java.util.concurrent.*;
59 56 import java.util.concurrent.atomic.AtomicInteger;
  57 +import java.util.concurrent.locks.Lock;
  58 +import java.util.concurrent.locks.ReentrantLock;
60 59  
61 60 /**
62 61 * 分娩记录信息
63 62  
... ... @@ -2931,8 +2930,10 @@
2931 2930 Connection connection = BookbuildingFacade.getConnection();
2932 2931 String sql = "select * " +
2933 2932 "from V_SYNC_TO_V3_PDR pdr " +
  2933 + "left join V_SYNC_TO_V3_PATIENT p on p.p_no = pdr.p_no " +
2934 2934 "where pdr.PDR_CHILDBIRTHDAY > sysdate - 29 " +
2935   - "and to_char(pdr.PDR_CHILDBIRTHDAY,'YYYY-MM') BETWEEN '"+param.getStartTime()+ "' and '"+ param.getEndTime() +"'";
  2935 + "and to_char(pdr.PDR_CHILDBIRTHDAY,'YYYY-MM') BETWEEN '"+param.getStartTime()+ "' and '"+ param.getEndTime() +"'" +
  2936 + "and ( p.P_ADDRESSCOUNTY='160' OR p.P_POSTPARTUMCOUNTY='160' OR p.P_RRCOUNTY ='160')";
2936 2937 List<MatDeliverAddRequest> list = new ArrayList<MatDeliverAddRequest>(1024);
2937 2938 try {
2938 2939 PreparedStatement preparedStatement = connection.prepareStatement(sql);
... ... @@ -3000,10 +3001,10 @@
3000 3001 matDeliverAddRequest.setTireNumber(pdrIrenum);
3001 3002 // TODO 2019/6/9 14:53 dongqing 胎盘
3002 3003 matDeliverAddRequest.setPlacenta(pdrPlacentanum);
3003   - // TODO 2019/6/9 14:54 dongqing 分娩医院
3004   - matDeliverAddRequest.setFmHospital("216");
3005   - // TODO 2019/6/9 14:55 dongqing 接生者
3006   - matDeliverAddRequest.setDeliverDoctor("1000000185");
  3004 + // 分娩医院-衡水市桃城区妇幼保健院
  3005 + matDeliverAddRequest.setFmHospital("2100001981");
  3006 + // 接生者-衡水市桃城区妇幼保健院
  3007 + matDeliverAddRequest.setDeliverDoctor("2100004880");
3007 3008 matDeliverAddRequest.setDeliveryMode(new HashedMap());
3008 3009 list.add(matDeliverAddRequest);
3009 3010 }
3010 3011  
3011 3012  
... ... @@ -3018,21 +3019,18 @@
3018 3019 }
3019 3020 }
3020 3021  
3021   - ExecutorService service = new ThreadPoolExecutor(3, 6, 9000, TimeUnit.MILLISECONDS,
  3022 + /* ExecutorService service = new ThreadPoolExecutor(3, 6, 9000, TimeUnit.MILLISECONDS,
3022 3023 new ArrayBlockingQueue<Runnable>(1),
3023 3024 new RejectedExecutionHandler() {
3024 3025 @Override
3025 3026 public void rejectedExecution(Runnable r, ThreadPoolExecutor executor) {
3026 3027 throw new RuntimeException();
3027 3028 }
3028   - });
  3029 + });*/
  3030 + ExecutorService service = Executors.newFixedThreadPool(5);
  3031 + Lock lock = new ReentrantLock(false);
3029 3032 for (final MatDeliverAddRequest request : list) {
3030   - service.execute(new Runnable() {
3031   - @Override
3032   - public void run() {
3033   - addOrUpdateMatDeliver(request, id);
3034   - }
3035   - });
  3033 + service.execute(new MatDeliverSyncV2Work(this, request, id, lock));
3036 3034 }
3037 3035 service.shutdown();
3038 3036 BaseResponse baseResponse = new BaseResponse();
3039 3037  
3040 3038  
3041 3039  
... ... @@ -3049,16 +3047,16 @@
3049 3047 */
3050 3048 public String getPregnancyOutByV2(String v2Val) {
3051 3049 String v3Val = "1";
3052   - if ("0".equals(v2Val)) {
  3050 + if ("活产".equals(v2Val)) {
3053 3051 v3Val = "0";
3054 3052 }
3055   - if ("1".equals(v2Val)) {
  3053 + if ("死胎".equals(v2Val) || "侵软胎".equals(v2Val)) {
3056 3054 v3Val = "1";
3057 3055 }
3058   - if ("2".equals(v2Val)) {
  3056 + if ("死产".equals(v2Val)) {
3059 3057 v3Val = "3";
3060 3058 }
3061   - if ("3".equals(v2Val)) {
  3059 + if ("七天内死亡".equals(v2Val)) {
3062 3060 v3Val = "3";
3063 3061 }
3064 3062 return v3Val;
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SaveByV2ThreadPoolFacade.java View file @ 7a5c123
... ... @@ -131,7 +131,7 @@
131 131 " (select p.* from V_SYNC_TO_V3_PATIENT p " +
132 132 " left join V_SYNC_TO_V3_PDR pdr on pdr.p_no = p.p_no " +
133 133 " where pdr.p_no is null and to_char(p.P_FILINGTIME,'YYYY-MM') BETWEEN '" + startTime + "' and '" + endTime + "' and ( p.P_ADDRESSCOUNTY='160' OR p.P_POSTPARTUMCOUNTY='160' OR p.P_RRCOUNTY ='160')" +
134   - " and p.P_LASTMENSTRUALPERIOD > sysdate - 2940" +
  134 + " and p.P_LASTMENSTRUALPERIOD > sysdate - 294" +
135 135 " union " +
136 136 " select p.* from V_SYNC_TO_V3_PATIENT p " +
137 137 " right join V_SYNC_TO_V3_PDR pdr on pdr.p_no = p.p_no " +
platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/MatDeliverSyncV2Work.java View file @ 7a5c123
  1 +package com.lyms.platform.operate.web.worker;
  2 +
  3 +import com.lyms.platform.operate.web.facade.MatDeliverFacade;
  4 +import com.lyms.platform.operate.web.request.MatDeliverAddRequest;
  5 +
  6 +import java.util.concurrent.locks.Lock;
  7 +
  8 +public class MatDeliverSyncV2Work implements Runnable {
  9 + private MatDeliverFacade matDeliverFacade;
  10 + private MatDeliverAddRequest request;
  11 + private Integer userId;
  12 + private Lock lock;
  13 +
  14 +
  15 + public MatDeliverSyncV2Work(final MatDeliverFacade matDeliverFacade,final MatDeliverAddRequest request,final Integer userId, final Lock lock){
  16 + this.matDeliverFacade = matDeliverFacade;
  17 + this.request = request;
  18 + this.userId = userId;
  19 + this.lock = lock;
  20 + }
  21 +
  22 + @Override
  23 + public void run() {
  24 +
  25 + try {
  26 + lock.lock();
  27 + matDeliverFacade.addOrUpdateMatDeliver(request, userId);
  28 + }catch (Exception e){
  29 + e.printStackTrace();
  30 + }finally {
  31 + lock.unlock();
  32 + }
  33 + }
  34 +}
platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/SyncV2HistoryWorkerx.java View file @ 7a5c123
... ... @@ -59,10 +59,10 @@
59 59  
60 60 list.setHospitalId("2100001981");
61 61 list.setBookbuildingDoctor("2100004880");
62   - list.setBookbuildingDate(DateUtil.getyyyy_MM_dd(new Date()));
  62 + //list.setBookbuildingDate(DateUtil.getyyyy_MM_dd(new Date()));
63 63 list.setHusbandNationId(queryParentConfig(list.getHusbandNationId()));
64 64 list.setPregnantNationId(queryParentConfig(list.getPregnantNationId()));
65   - p = bookbuildingFacade.addPregnantBookbuilding(list, null, false);
  65 + p = bookbuildingFacade.addPregnantBookbuilding(list, 2100004880, false);
66 66 }catch (Exception e){
67 67 e.printStackTrace();
68 68 }finally {