diff --git a/platform-dal/src/main/java/com/lyms/platform/query/PatientsQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/PatientsQuery.java index 7f573aa..c036180 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/PatientsQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/PatientsQuery.java @@ -1039,7 +1039,7 @@ public class PatientsQuery extends BaseQuery implements IConvertToNativeQuery { if (c1 != null) { c1 = c1.andOperator(c.andCondition(MongoCondition.newInstance("riskFactorId", null, MongoOper.NE)).getCriteria()); } else { - c1 = c.andCondition(MongoCondition.newInstance("riskFactorId", null, MongoOper.NE)).getCriteria(); + c1 = c.andCondition(MongoCondition.newInstance("riskFactorId", Arrays.asList("d42eec03-aa86-45b8-a4e0-78a0ff365fb6"), MongoOper.NE)).getCriteria(); } } else if (null != rFactorList && !rFactorList.isEmpty()) { condition = condition.and("riskFactorId", rFactorList, MongoOper.IN); diff --git a/platform-operate-api/src/main/java/com/lyms/hospitalapi/hs/HsFm.java b/platform-operate-api/src/main/java/com/lyms/hospitalapi/hs/HsFm.java index 9087ae6..f2117bc 100644 --- a/platform-operate-api/src/main/java/com/lyms/hospitalapi/hs/HsFm.java +++ b/platform-operate-api/src/main/java/com/lyms/hospitalapi/hs/HsFm.java @@ -43,6 +43,7 @@ public class HsFm { private String DELIVER_HOSPITAL; //分娩医院 private String DELIVER_DOCTOR; //接生医生 private String BABY_FETAL_PRESENTATION; //胎先露(头|臀|足|肩) + private String HEART_RATE; //胎心率 private String BABY_FETAL_POSITION; //胎方位 private String BABY_SEX; //新生儿性别 private String BABY_DELIVERY_TIME; //新生儿娩出时间 @@ -69,6 +70,14 @@ public class HsFm { private String babyDate;//接收孕妇分娩最近日期 + public String getHEART_RATE() { + return HEART_RATE; + } + + public void setHEART_RATE(String HEART_RATE) { + this.HEART_RATE = HEART_RATE; + } + public String getBREATH() { return BREATH; } diff --git a/platform-operate-api/src/main/java/com/lyms/hospitalapi/hs/HsfyFmService.java b/platform-operate-api/src/main/java/com/lyms/hospitalapi/hs/HsfyFmService.java index 6ee472e..a9ea88b 100644 --- a/platform-operate-api/src/main/java/com/lyms/hospitalapi/hs/HsfyFmService.java +++ b/platform-operate-api/src/main/java/com/lyms/hospitalapi/hs/HsfyFmService.java @@ -152,6 +152,9 @@ public class HsfyFmService { "BABY_TOUCH_STARTM," + "BABY_TOUCH_LASTM," + "UM_EXTYPE," + + "HEART_RATE," + + "BABY_FETAL_PRESENTATION," + + "BABY_FETAL_POSITION," + "OH_LOSE_BLOOD, " + "TH_LOSE_BLOOD , " + "PLACENTA_NUM , " + @@ -213,6 +216,8 @@ public class HsfyFmService { Date dueDate = null; List babies = new ArrayList<>(); MatDeliverAddRequest deliverAddRequest = new MatDeliverAddRequest(); + //胎盘信息 + List placentas = new ArrayList<>(); for(HsFm allFm:allList){ if ("死胎".equals(allFm.getBABY_PREGNANCY_OUT())) @@ -427,6 +432,34 @@ public class HsfyFmService { deliverAddRequest.setExtPlacentas(extPlacentas); + + MatDeliverAddRequest.Placenta placenta = new MatDeliverAddRequest.Placenta(); + + + if (StringUtils.isNotEmpty(allFm.getHEART_RATE())) + { + placenta.setHeartRate(Double.parseDouble(allFm.getHEART_RATE())); + } + if (StringUtils.isNotEmpty(allFm.getBABY_FETAL_POSITION())) + { + for (FetalPositionEnums fetalPositionEnums : FetalPositionEnums.values()){ + if (fetalPositionEnums.getName().contains(allFm.getBABY_FETAL_POSITION())){ + placenta.setFetalPosition(fetalPositionEnums.getId()); + break; + } + } + } + if (StringUtils.isNotEmpty(allFm.getBABY_FETAL_PRESENTATION())) + { + for (FetalEnums fetalEnums : FetalEnums.values()) { + if (fetalEnums.getName().equals(allFm.getBABY_FETAL_PRESENTATION())) { + placenta.setFetalPresentation(fetalEnums.getId()); + break; + } + } + } + + placentas.add(placenta); //儿童 MatDeliverAddRequest.Baby baby = new MatDeliverAddRequest.Baby(); Map as = new HashMap<>(); @@ -519,6 +552,7 @@ public class HsfyFmService { } if(a==0){ + deliverAddRequest.setPlacentas(placentas); deliverAddRequest.setBabies(babies); deliverAddRequest.setFmHospital(HOSPITALID); // ExceptionUtils.catchException("deliverAddRequest===" + deliverAddRequest); 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 2270cd9..c2c238e 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 @@ -4691,4 +4691,27 @@ public class TestController extends BaseController { public List getLhxfyLis(String cardNo) { return lhxfyService.getLhxfyLis(cardNo); } + + +// @RequestMapping(value = "/domatDeliverFollow", method = RequestMethod.GET) +// @ResponseBody +// public void domatDeliverFollow() { +// MatDeliverFollowQuery mfQuery = new MatDeliverFollowQuery(); +// mfQuery.setVisitStartDate(DateUtil.addMonth(new Date(), -10000)); +// mfQuery.setVisitEndDate(new Date()); +// List maternalDeliverList = matDeliverFollowService.query(mfQuery); +// if (CollectionUtils.isNotEmpty(maternalDeliverList)) { +// for(MatdeliverFollowModel matdeliverFollowModel : maternalDeliverList) +// { +// MaternalDeliverModel maternalDeliverModel = new MaternalDeliverModel(); +// maternalDeliverModel.setVisitDate(matdeliverFollowModel.getVisitDate()); +// maternalDeliverModel.setId(matdeliverFollowModel.getDeliverId()); +// System.out.println(matdeliverFollowModel.getDeliverId()); +// matDeliverService.updateOne(maternalDeliverModel,maternalDeliverModel.getId()); +// } +// } +// } + + + } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatdeliverFollowFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatdeliverFollowFacade.java index 1ca07db..84d34b0 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatdeliverFollowFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatdeliverFollowFacade.java @@ -237,9 +237,10 @@ public class MatdeliverFollowFacade { matDeliverFollowAddRequest.setMakeCreateDate(new Date()); matDeliverFollowAddRequest.setCreateUser(String.valueOf(userId)); matDeliverFollowAddRequest.setCreateDate(new Date()); - + MatdeliverFollowModel matdeliverFollowModel = matDeliverFollowAddRequest.convertToDataModel(); + matdeliverFollowModel.setHospitalId(hospitalId); //新增随访记录 - MatdeliverFollowModel matdeliverFollowModel = matDeliverFollowService.addMatDeliverFollow(matDeliverFollowAddRequest.convertToDataModel()); + matdeliverFollowModel = matDeliverFollowService.addMatDeliverFollow(matdeliverFollowModel); //获取分娩记录 MaternalDeliverModel maternalDeliverModel = matDeliverService.getOneMatDeliver(matDeliverFollowAddRequest.getDeliverId()); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/RiskReportFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/RiskReportFacade.java index 3d9c5d0..95c4aed 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/RiskReportFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/RiskReportFacade.java @@ -463,6 +463,7 @@ public class RiskReportFacade { //包含国家高危的自定义高危人数 int otherPatientCount = patientsService.queryPatientCount(query); + System.out.println(patientsQuery.convertToQuery().convertToMongoQuery().toString()); //总的孕妇条数(国家标准高危) int allPatientCount = patientsService.queryPatientCount(patientsQuery); // allPatientCount += riskPatientCount; diff --git a/platform-transfer/src/main/java/com/lyms/platform/conn/BoneConnection.java b/platform-transfer/src/main/java/com/lyms/platform/conn/BoneConnection.java index 45279f6..f5db6f0 100644 --- a/platform-transfer/src/main/java/com/lyms/platform/conn/BoneConnection.java +++ b/platform-transfer/src/main/java/com/lyms/platform/conn/BoneConnection.java @@ -1,6 +1,8 @@ package com.lyms.platform.conn; import com.lyms.platform.conn.inf.BaseConnection; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import java.sql.*; @@ -8,7 +10,7 @@ import java.sql.*; * 骨密度连接 */ public class BoneConnection extends BaseConnection { - + private static final Logger logger = LoggerFactory.getLogger(BoneConnection.class); private String path; protected BoneConnection(String path) { @@ -24,7 +26,7 @@ public class BoneConnection extends BaseConnection { String url = "jdbc:Access:///"+path; conn = DriverManager.getConnection(url, "", ""); } catch (Exception e) { - e.printStackTrace(); + logger.error("getConnection error."+e.toString()); } return conn; } diff --git a/platform-transfer/src/main/java/com/lyms/platform/worker/BoneTransferWorker.java b/platform-transfer/src/main/java/com/lyms/platform/worker/BoneTransferWorker.java index 019512a..5af0569 100644 --- a/platform-transfer/src/main/java/com/lyms/platform/worker/BoneTransferWorker.java +++ b/platform-transfer/src/main/java/com/lyms/platform/worker/BoneTransferWorker.java @@ -29,77 +29,74 @@ public class BoneTransferWorker extends TransferAbstract implements ITransfer{ @Override public void doTransfer() { - logger.info("getBoneRecords start"); - Connection conn = null; - Statement sta = null; - ResultSet rst = null; - ConnectionFactoryMethod factoryMethod = new BoneConnectionFactory(); - IConnection iConnection = null; - try { - iConnection = factoryMethod.createConnection(properties.getDataPath()); - conn = iConnection.getConnection(); - sta = conn.createStatement(); - String sql = "select PatientID,ZScore,TScore,dbSos,dbBqi,dbRrf,dbEoa,YoungAdult,ageMatched,dbAge,PartDisplayName,PatientName from PatientInfo where status is null and DayTimeOfSave > "+ DateUtil.formatDate(new Date(),"yyyy-MM-dd"); - logger.info("getBoneRecords sql="+sql); - rst = sta.executeQuery(sql); - while (rst.next()) { - - - Map map = new HashMap(); - - String PatientID = rst.getString("PatientID"); //身份证后八位 - - logger.info("getBoneRecords PatientID"+PatientID); - - map.put("cardNo",PatientID); - - String PartDisplayName = rst.getString("PartDisplayName"); - map.put("position",PartDisplayName); - - String PatientName = rst.getString("PatientName"); //孕妇姓名 - map.put("username",PatientName); - - String ZScore = rst.getString("ZScore"); - String TScore = rst.getString("TScore"); - String dbSos = rst.getString("dbSos"); - - String bqi = rst.getString("dbBqi"); - String rrf = rst.getString("dbRrf"); - String eoa = rst.getString("dbEoa"); - - String adultPercent = rst.getString("YoungAdult"); - String agePercent = rst.getString("ageMatched"); - String age = rst.getString("dbAge"); - - map.put("zvalue",ZScore); - map.put("tvalue",TScore); - map.put("sos",dbSos); - - map.put("bqi",bqi); - map.put("rrf",rrf); - map.put("eoa",eoa); - - map.put("adultPercent",adultPercent); - map.put("agePercent",agePercent); - map.put("age",age); - map.put("type",properties.getType()); // - map.put("hospitalId",properties.getHospitalId()); // - - if (map.size() > 0 && PatientID != null) - { - String response = send(map, properties.getUrl() + "/saveBone"); - if (response.contains("0")) + while (true) + { + logger.info("getBoneRecords start"); + Connection conn = null; + Statement sta = null; + ResultSet rst = null; + ConnectionFactoryMethod factoryMethod = new BoneConnectionFactory(); + IConnection iConnection = null; + try { + iConnection = factoryMethod.createConnection(properties.getDataPath()); + conn = iConnection.getConnection(); + sta = conn.createStatement(); + String sql = "select PatientID,ZScore,TScore,dbSos,dbBqi,dbRrf,dbEoa,YoungAdult,ageMatched,dbAge,PartDisplayName,PatientName from PatientInfo where status is null and DayTimeOfSave > "+ DateUtil.formatDate(new Date(),"yyyy-MM-dd"); + rst = sta.executeQuery(sql); + while (rst.next()) { + Map map = new HashMap(); + String PatientID = rst.getString("PatientID"); //身份证后八位 + map.put("cardNo",PatientID); + + String PartDisplayName = rst.getString("PartDisplayName"); + map.put("position",PartDisplayName); + + String PatientName = rst.getString("PatientName"); //孕妇姓名 + map.put("username",PatientName); + + String ZScore = rst.getString("ZScore"); + String TScore = rst.getString("TScore"); + String dbSos = rst.getString("dbSos"); + + String bqi = rst.getString("dbBqi"); + String rrf = rst.getString("dbRrf"); + String eoa = rst.getString("dbEoa"); + + String adultPercent = rst.getString("YoungAdult"); + String agePercent = rst.getString("ageMatched"); + String age = rst.getString("dbAge"); + + map.put("zvalue",ZScore); + map.put("tvalue",TScore); + map.put("sos",dbSos); + + map.put("bqi",bqi); + map.put("rrf",rrf); + map.put("eoa",eoa); + + map.put("adultPercent",adultPercent); + map.put("agePercent",agePercent); + map.put("age",age); + map.put("type",properties.getType()); // + map.put("hospitalId",properties.getHospitalId()); // + + if (map.size() > 0 && PatientID != null) { - sta.executeUpdate("update PatientInfo set status='1' where PatientID='"+PatientID+"'"); - conn.commit(); + String response = send(map, properties.getUrl() + "/saveBone"); + if (response.contains("0")) + { + sta.executeUpdate("update PatientInfo set status='1' where PatientID='"+PatientID+"'"); + conn.commit(); + } } } + Thread.sleep(10000); + } catch (Exception e) { + logger.error("getBoneRecords Exception. "+e.toString()); + } + finally { + iConnection.close(conn, sta,rst); } - } catch (Exception e) { - logger.error("getBoneRecords Exception. "+e.toString()); - } - finally { - iConnection.close(conn, sta,rst); } } } diff --git a/platform-transfer/src/main/java/com/lyms/platform/worker/TransferAbstract.java b/platform-transfer/src/main/java/com/lyms/platform/worker/TransferAbstract.java index bc78945..b93ca8d 100644 --- a/platform-transfer/src/main/java/com/lyms/platform/worker/TransferAbstract.java +++ b/platform-transfer/src/main/java/com/lyms/platform/worker/TransferAbstract.java @@ -19,7 +19,6 @@ public abstract class TransferAbstract implements ITransfer { if (data != null && data.size() > 0) { String json = JsonUtil.obj2Str(data); - logger.info("http json= " + json); String result = HttpClientUtil.doPostSSL(path, json); logger.info("http result= "+result); return result; diff --git a/platform-transfer/src/main/java/com/lyms/platform/worker/TransferWorker.java b/platform-transfer/src/main/java/com/lyms/platform/worker/TransferWorker.java index a08716c..3a60111 100644 --- a/platform-transfer/src/main/java/com/lyms/platform/worker/TransferWorker.java +++ b/platform-transfer/src/main/java/com/lyms/platform/worker/TransferWorker.java @@ -1,5 +1,6 @@ package com.lyms.platform.worker; +import org.springframework.beans.factory.InitializingBean; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.EnableScheduling; import org.springframework.scheduling.annotation.Scheduled; @@ -9,19 +10,19 @@ import org.springframework.stereotype.Component; * Created by Administrator on 2020-03-23. */ @Component -@EnableScheduling -public class TransferWorker extends TransferAbstract implements ITransfer { +public class TransferWorker extends TransferAbstract implements ITransfer,InitializingBean { @Autowired private BoneTransferWorker boneTransferWorker; - @Autowired - private MicroelementTransferWorker microelementTransferWorker; - @Override - @Scheduled(cron = "0 0/1 * * * ?") +// @Scheduled(cron = "0 0/1 * * * ?",fixedDelay = 10000) public void doTransfer() { - boneTransferWorker.doTransfer(); + } + @Override + public void afterPropertiesSet() throws Exception { + boneTransferWorker.doTransfer(); + } }