diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/JdbcUtil.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/JdbcUtil.java new file mode 100644 index 0000000..76bd140 --- /dev/null +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/JdbcUtil.java @@ -0,0 +1,1210 @@ +package com.lyms.platform.biz; + +import com.lyms.platform.common.enums.*; +import com.lyms.platform.common.utils.JsonUtil; +import com.lyms.platform.common.utils.SystemConfig; +import com.lyms.platform.pojo.*; +import org.apache.velocity.anakia.Escape; +import org.bson.types.ObjectId; +import org.springframework.context.ApplicationContext; +import org.springframework.context.support.ClassPathXmlApplicationContext; +import org.springframework.data.mongodb.core.MongoTemplate; + + +import java.sql.*; +import java.util.*; +import java.util.Date; + +/** + * Created by Administrator on 2016/9/29. + */ +public class JdbcUtil { + public static Connection getOracleConnection() { + Connection con = null; + try { + Class.forName("oracle.jdbc.driver.OracleDriver"); + String url = "jdbc:oracle:thin:@119.90.57.27:1521:orcl"; + String userName = "lyms_21"; + String pwd = "LYMS_21"; + con = DriverManager.getConnection(url, userName, pwd); + } catch (Exception e) { + e.printStackTrace(); + } + return con; + } + + + public static Connection getMysqlConnection() { + Connection con = null; + try { + Class.forName("com.mysql.jdbc.Driver"); + String url = "jdbc:mysql://119.90.57.26:3306/platform?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8"; + String userName = "platform"; + String pwd = "platform123"; + con = DriverManager.getConnection(url, userName, pwd); + } catch (Exception e) { + e.printStackTrace(); + } + return con; + } + + public static void freeConnection(Connection connection,PreparedStatement ps,ResultSet rs){ + try { + if(rs != null){ + rs.close(); + } + if(ps != null){ + ps.close(); + } + if( null != connection) + { + connection.close(); + } + } catch (SQLException e) { + } + } + + /** + * + * @param sql + * @return + */ + public static List> getListDataBySql(String sql) + { + Connection conn = getOracleConnection(); + PreparedStatement pst = null; + ResultSet rs = null; + List> list = new ArrayList<>(); + try { + pst = conn.prepareStatement(sql); + rs = pst.executeQuery(); + int count = rs.getMetaData().getColumnCount(); + while (rs.next()) { + Map maps = new HashMap<>(); + for (int i = 1; i <= count; i++) { + String columnName = rs.getMetaData().getColumnName(i); + Object obj = rs.getObject(columnName); + if (obj != null) { + maps.put(columnName, obj); + } + else + { + maps.put(columnName,null); + } + } + list.add(maps); + } + }catch (Exception e) + { + e.printStackTrace(); + } finally { + freeConnection(conn,pst,rs); + } + return list; + } + + public static Object getOralceSingleObjBySql(String sql) + { + Connection conn = getOracleConnection(); + PreparedStatement pst = null; + ResultSet rs = null; + try { + pst = conn.prepareStatement(sql); + rs = pst.executeQuery(); + int count = rs.getMetaData().getColumnCount(); + for (int i = 1 ; i <= count ;i++) + { + String columnName = rs.getMetaData().getColumnName(i); + while (rs.next()){ + return rs.getObject(columnName); + } + + } + }catch (Exception e) + { + e.printStackTrace(); + } finally { + freeConnection(conn,pst,rs); + } + return null; + } + + + public static Object getMysqlSingleObjBySql(String sql) + { + Connection conn = getMysqlConnection(); + PreparedStatement pst = null; + ResultSet rs = null; + try { + pst = conn.prepareStatement(sql); + rs = pst.executeQuery(); + int count = rs.getMetaData().getColumnCount(); + for (int i = 1 ; i <= count ;i++) + { + String columnName = rs.getMetaData().getColumnName(i); + while (rs.next()){ + return rs.getObject(columnName); + } + + } + }catch (Exception e) + { + e.printStackTrace(); + } finally { + freeConnection(conn,pst,rs); + } + return null; + } + + public static MongoTemplate getMongoTemplate() + { + ApplicationContext applicationContext = new ClassPathXmlApplicationContext("classpath:/spring/applicationContext_biz_patient1.xml"); + MongoTemplate mongoTemplate + =(MongoTemplate)applicationContext.getBean("mongoTemplate"); + mongoTemplate.getDb().authenticate("platform", "platform123".toCharArray()); + return mongoTemplate; + } + + + public static void syncPatientData() + { + List> list = getListDataBySql(" SELECT * FROM ( SELECT A.*, ROWNUM RN FROM (select replace(mp.P_NO,'-','') as PID,mp.*,p_birthday from MOMMY_PATIENT mp left join Plat_Patient pp on mp.p_platpatientid=pp.p_id where mp.P_CARDTYPE is not null" + + " and mp.p_no = '44ac6a05-9873-4233-85c4-6360b640e3a0') A WHERE ROWNUM <= 10 ) WHERE RN >= 0 "); + + + MongoTemplate mongoTemplate = getMongoTemplate(); + + for(Map map : list) + { + PersonModel person = new PersonModel(); + person.setCreated(new Date()); + person.setType(getInteger(map.get("P_PATIENTTYPE"))); + person.setYn(YnEnums.YES.getId()); + person.setBirth(map.get("P_BIRTHDAY") == null ? new Date() : getDate(map.get("P_BIRTHDAY"))); + person.setCardNo(getString(map.get("P_CARDNO"))); + person.setName(getString(map.get("P_MOTHERNAME"))); + person.setPhone(getString(map.get("P_MOBILEPHONE"))); + + mongoTemplate.save(person); + + Patients patients = new Patients(); + patients.setPid(person.getId()); + patients.setId(String.valueOf(map.get("PID"))); + patients.setYn(getInteger(map.get("P_ISVALID"))); //是否有效 + + String cardType = getString(map.get("P_CARDTYPE")); //证件类型 + String cardTypeName = getString(getOralceSingleObjBySql("select dc_name from plat_datacontent where dc_id='" + cardType + "'")); + if (cardTypeName != null && !"".equals(cardTypeName)) + { + String id = getMongoBasicConfig(cardTypeName, SystemConfig.CERTE_TYPE_ID); + patients.setPcerteTypeId(id); + } + patients.setCardNo(getString(map.get("P_CARDNO"))); //证件号码 + + //---------------------居住地址 + String proviceId = getString(map.get("P_ADDRESSPROVINCE")); + if (proviceId != null && !"".equals(proviceId)) + { + String juzhudiProviceName = getOracleBasicConfig(proviceId); + String id1 = getMongoBasicConfig(juzhudiProviceName, SystemConfig.CHINA_BASIC_ID); + patients.setProvinceId(id1); //居住地省 + + String cityId = getString(map.get("P_ADDRESSCITY")); + if (cityId != null && !"".equals(cityId)) + { + String juzhudiCityName = getOracleBasicConfig(cityId); + String id2 = getMongoBasicConfig(juzhudiCityName, id1); + patients.setCityId(id2); //居住地市 + String areaId = getString(getString(map.get("P_ADDRESSCOUNTY"))); + if (areaId != null && !"".equals(areaId)) + { + String juzhudiAreaName = getOracleBasicConfig(areaId); + String id3 = getMongoBasicConfig(juzhudiAreaName, id2); + patients.setAreaId(id3); //居住区 + + String streetId = getString(map.get("P_TOWNSHIP")); + if (streetId != null && !"".equals(streetId)) + { + String juzhudiStreetName = getOracleBasicConfig(streetId); + String id4 = getMongoBasicConfig(juzhudiStreetName, id3); + patients.setStreetId(id4); //街道 镇 + } + } + } + } + + patients.setAddress(getString(map.get("P_ADDRESSSTREET"))); // 详细地址 + + //---------------------居住地址 + + String pprofessionTypeId = getString(map.get("P_OCCUPATIONID")); + if (pprofessionTypeId != null && !"".equals(pprofessionTypeId)) + { + String pprofessionTypeName = getOracleBasicConfig(pprofessionTypeId); + String id = getMongoBasicConfig(pprofessionTypeName, SystemConfig.PROFESSION_TYPE_ID); + patients.setPprofessionTypeId(id); // 职业 + } + + patients.setPhone(getString(map.get("P_MOBILEPHONE"))); //孕妇手机号码 + patients.setUsername(getString(map.get("P_MOTHERNAME"))); //孕妇姓名 + patients.setBookbuildingDate(getDate(map.get("P_FILINGTIME"))); //建档日期 + patients.setLastMenses(getDate(map.get("P_LASTMENSTRUALPERIOD"))); //末次月经 + + String buildHospitalId = getString(map.get("P_HOSPITALID")); //医院ID + + + Integer P_RESIDETYPE = getInteger(map.get("P_RESIDETYPE")); //居住类别 + if (P_RESIDETYPE != null && P_RESIDETYPE == 0) + { + patients.setPliveTypeId("57624bf90cf23d4631523e9e"); + } + else if (P_RESIDETYPE != null && (P_RESIDETYPE == 1 || P_RESIDETYPE == 2)) + { + patients.setPliveTypeId("57624c090cf23d4631523e9f"); + } + + + Integer P_ACCOUNTTYPE = getInteger(map.get("P_ACCOUNTTYPE")); //户口类别 + if (P_ACCOUNTTYPE != null && P_ACCOUNTTYPE == 0) + { + patients.setPliveTypeId("57624c440cf23d4631523ea1"); + } + else if (P_ACCOUNTTYPE != null && P_ACCOUNTTYPE == 1) + { + patients.setPliveTypeId("57624c5e0cf23d4631523ea2"); + } + + if (buildHospitalId != null && !"".equals(buildHospitalId)) + { + String hname = getString(getOralceSingleObjBySql("select h_name from plat_hospital h where h.h_isvalid=1 and h_id = '" + buildHospitalId + "'")); + String id = getString(getMysqlSingleObjBySql("select id from organization where name = '" + hname + "'")); + patients.setHospitalId(id); + } + + patients.setType(getInteger(map.get("P_PATIENTTYPE"))); //患者类型 + + String doctorId = getString(map.get("P_DOCID")); + if (doctorId != null && !"".equals(doctorId)) + { + String hname = getString(getOralceSingleObjBySql("select e.e_name from mommy_employee e where e.e_id = '" + doctorId + "'")); + String id = getString(getMysqlSingleObjBySql("select id from users where name = '" + hname + "'")); + patients.setBookbuildingDoctor(id); //建档医生 + } + + Integer isvip = getInteger(map.get("P_ISVIP")); //vip + if (isvip != null) + { + //会员状态 0不是会员 1 是 + if (0 == isvip) + { + patients.setServiceType(ServiceTypeEnums.STANDARD_SERVICE.getId()); + patients.setServiceStatus(ServiceStatusEnums.STANDARD_OPEN.getId()); + } + else if (1 == isvip) + { + patients.setServiceType(ServiceTypeEnums.ADD_SERVICE.getId()); + patients.setServiceStatus(ServiceStatusEnums.ADD_OPEN.getId()); + } + } + + + String plevel = getString(map.get("P_EDUCATIONLEVEL"));//孕妇文化程度 + if (plevel != null && !"".equals(plevel)) + { + String plevelName = getOracleBasicConfig(plevel); + String id = getMongoBasicConfig(plevelName, SystemConfig.LEVEL_TYPE_ID); + patients.setPlevelTypeId(id); + } + + + String guoJi = getString(map.get("P_COUNTRY"));//孕妇国籍 + if (guoJi != null && !"".equals(guoJi)) + { + String guoJiName = getOracleBasicConfig(guoJi); + String id = getMongoBasicConfig(guoJiName, SystemConfig.COUNTRY_TYPE_ID); + patients.setPcountryId(id); + } + + patients.setPworkUnit(getString(map.get("P_UNITWORK")));//孕妇工作单位 + + String pnation = getString(map.get("P_NATION")); + if (pnation != null && !"".equals(pnation)) + { + String pnationName = getOracleBasicConfig(pnation); + String id = getMongoBasicConfig(pnationName, SystemConfig.NATION_TYPE_ID); + patients.setPnationId(id); + } + + //---------------------户口地址 + String huKouproviceId = getString(map.get("P_RRPROVINCE")); + if (huKouproviceId != null && !"".equals(huKouproviceId)) + { + String proviceName = getOracleBasicConfig(huKouproviceId); + String id1 = getMongoBasicConfig(proviceName, SystemConfig.LIVE_TYPE_ID); + patients.setProvinceRegisterId(id1); //户口地省 + + String huKoucityId = getString(map.get("P_RRCITY")); + if (huKoucityId != null && !"".equals(huKoucityId)) + { + String cityName = getOracleBasicConfig(huKoucityId); + String id2 = getMongoBasicConfig(cityName, id1); + patients.setCityRegisterId(id2); //户口地市 + + String huKouareaId = getString(getString(map.get("P_RRCOUNTY"))); + if (huKouareaId != null && !"".equals(huKouareaId)) + { + String areaName = getOracleBasicConfig(huKouareaId); + String id3 = getMongoBasicConfig(areaName, id2); + patients.setAreaRegisterId(id3); //户口居住区 + + String huKoustreetId = getString(map.get("P_RRTOWNSHIP")); + if (huKoustreetId != null && !"".equals(huKoustreetId)) + { + String streetName = getOracleBasicConfig(huKoustreetId); + String id4 = getMongoBasicConfig(streetName, id3); + patients.setStreetRegisterId(id4); //户口街道 镇 + + } + } + + } + } + patients.setAddressRegister(getString(map.get("P_RRSTREET"))); // 详细地址 + + //---------------------户口地址 + + //----------------------产后修养地 + + String chanHouproviceId = getString(map.get("P_POSTPARTUMPROVINCE")); + if (chanHouproviceId != null && !"".equals(chanHouproviceId)) + { + String proviceName = getOracleBasicConfig(chanHouproviceId); + String id1 = getMongoBasicConfig(proviceName, SystemConfig.LIVE_TYPE_ID); + patients.setProvincePostRestId(id1); + + String chanhoucityId = getString(map.get("P_POSTPARTUMCITY")); + if (chanhoucityId != null && !"".equals(chanhoucityId)) + { + String cityName = getOracleBasicConfig(chanhoucityId); + String id2 = getMongoBasicConfig(cityName, id1); + patients.setCityPostRestId(id2); + + String chanhouareaId = getString(getString(map.get("P_POSTPARTUMCOUNTY"))); + if (chanhouareaId != null && !"".equals(chanhouareaId)) + { + String areaName = getOracleBasicConfig(chanhouareaId); + String id3 = getMongoBasicConfig(areaName, id2); + patients.setAreaPostRestId(id3); + + String chanhoustreetId = getString(map.get("P_POSTPARTUMTOWNSHIP")); + if (chanhoustreetId != null && !"".equals(chanhoustreetId)) + { + String streetName = getOracleBasicConfig(chanhoustreetId); + String id4 = getMongoBasicConfig(streetName, id3); + patients.setStreetPostRestId(id4); + } + } + } + } + + patients.setAddressPostRest(getString(map.get("P_POSTPARTUMSTREET"))); // 详细地址 + + //----------------------产后修养地 + + patients.setHusbandName(getString(map.get("P_HUSBANDNAME"))); //丈夫名称 + patients.setHusbandBirth(getDate(map.get("P_HUSBANDBIRTHDAY"))); //丈夫生日 + patients.setHusbandPhone(getString(map.get("P_HUSBANDMOBILEPHONE"))); //丈夫电话 + patients.setHworkUnit(getString(map.get("P_HUSBANDUNITWORK"))); //丈夫工作单位 + + String hprofessionTypeId = getString(map.get("P_HUSBANDOCCUPATIONID"));// 职业 + if (hprofessionTypeId != null && !"".equals(hprofessionTypeId)) + { + String professionTypeName = getOracleBasicConfig(hprofessionTypeId); + String id = getMongoBasicConfig(professionTypeName, SystemConfig.PROFESSION_TYPE_ID); + patients.setHprofessionTypeId(id); + } + + String P_HUSBANDCARDTYPE = getString(map.get("P_HUSBANDCARDTYPE")); //丈夫证件类型 + String hcardTypeName = getString(getOralceSingleObjBySql("select dc_name from plat_datacontent where dc_id='" + P_HUSBANDCARDTYPE + "'")); + if (hcardTypeName != null && !"".equals(hcardTypeName)) + { + String id = getMongoBasicConfig(hcardTypeName, SystemConfig.CERTE_TYPE_ID); + patients.setHcertificateTypeId(id); + } + patients.setHcertificateNum(getString(map.get("P_HUSBANDCARDNO"))); //证件号码 + + + String hlevel = getString(map.get("P_HUSBANDEDUCATIONLEVEL"));//丈夫文化程度 + if (hlevel != null && !"".equals(hlevel)) + { + String plevelName = getOracleBasicConfig(hlevel); + String id = getMongoBasicConfig(plevelName, SystemConfig.LEVEL_TYPE_ID); + patients.setHlevelTypeId(id); + } + + + String hguoji = getString(map.get("P_HUSBANDCOUNTRY"));//丈夫国籍 + if (hguoji != null && !"".equals(hguoji)) + { + String guoJiName = getOracleBasicConfig(hguoji); + String id = getMongoBasicConfig(guoJiName, SystemConfig.COUNTRY_TYPE_ID); + patients.setHcountryId(id); + } + + String P_HUSBANDNATION = getString(map.get("P_HUSBANDNATION")); //丈夫民族 + if (P_HUSBANDNATION != null && !"".equals(P_HUSBANDNATION)) + { + String pnationName = getOracleBasicConfig(P_HUSBANDNATION); + String id = getMongoBasicConfig(pnationName, SystemConfig.NATION_TYPE_ID); + patients.setHnationId(id); + } + + //------丈夫户口所在地 + + String hproviceId = getString(map.get("P_HUSBANDRRPROVINCE")); + if (hproviceId != null && !"".equals(hproviceId)) + { + String name = getOracleBasicConfig(hproviceId); + String id1 = getMongoBasicConfig(name, SystemConfig.LIVE_TYPE_ID); + patients.setProvincePostRestId(id1); + + String hcityId = getString(map.get("P_HUSBANDRRCITY")); + if (hcityId != null && !"".equals(hcityId)) + { + String nameCity = getOracleBasicConfig(hcityId); + String id2 = getMongoBasicConfig(nameCity, id1); + patients.setCityPostRestId(id2); + + String hareId = getString(getString(map.get("P_HUSBANDRRCOUNTY"))); + if (hareId != null && !"".equals(hareId)) + { + String nameArea = getOracleBasicConfig(hareId); + String id3 = getMongoBasicConfig(nameArea, id2); + patients.setAreaPostRestId(id3); + + String hstreetId = getString(map.get("P_HUSBANDRRTOWNSHIP")); + if (hstreetId != null && !"".equals(hstreetId)) + { + String nameStreet = getOracleBasicConfig(hstreetId); + String id4 = getMongoBasicConfig(nameStreet, id3); + patients.setStreetPostRestId(id4); + } + } + } + } + + patients.setAddressPostRest(getString(map.get("P_HUSBANDRRSTREET"))); // 详细地址 + patients.setHworkUnit(getString(map.get("P_FILENUMBER"))); //建档编号 + patients.setFileCode(getString(map.get("P_CLINICNO"))); //就诊卡号 + + mongoTemplate.save(patients); + syncChuZhen(person.getId(),patients.getId(),mongoTemplate); + syncFuzhen(person.getId(),patients.getId(),mongoTemplate); + } + } + + private static void syncChuZhen(String pid,String parentId, MongoTemplate mongoTemplate) + { + List> list = getListDataBySql(" SELECT * FROM MOMMY_FIRSTEXAMINE f where replace(f.FE_TRIAGEORDERNO,'-','') = '" + parentId + "'"); + for(Map map : list) + { + AntExChuModel chuModel = new AntExChuModel(); + + chuModel.setParentId(parentId); + chuModel.setPid(pid); + chuModel.setId(getString(map.get("FE_ID"))); + + chuModel.setDueDate(getDate(map.get("FE_EXPECTEDDATECONFINEMENT"))); + chuModel.setLastMenses(getDate(map.get("FE_LASTMENSTRUALPERIOD"))); + chuModel.setcDueWeek(getString(map.get("FE_PREGNANCYWEEK"))); + chuModel.setPastHistory(getString(map.get(""))); + chuModel.setFamilyHistory(getString(map.get(""))); + chuModel.setPersonalHistory(getString(map.get(""))); + chuModel.setYmjzHistory(getString(map.get(""))); + chuModel.setYwgmHistory(getString(map.get(""))); + chuModel.setFksxHistory(getString(map.get(""))); + chuModel.setYsfyHistory(getString(map.get(""))); + chuModel.setPregnancyTimes(getInteger(map.get(""))); + chuModel.setProdTime(getInteger(map.get(""))); + chuModel.setDelivery(getInteger(map.get(""))); + chuModel.setPlanedProd(getInteger(map.get(""))); + chuModel.setAbortion(getInteger(map.get(""))); + chuModel.setStillbirth(getInteger(map.get(""))); + chuModel.setStillChan(getInteger(map.get(""))); + chuModel.setNeoDeath(getInteger(map.get(""))); + chuModel.setBirthDefect(getInteger(map.get(""))); + chuModel.setHeight(getString(map.get("FE_HEIGHT"))); + chuModel.setWeight(getString(map.get("FE_WEIGHT"))); + chuModel.setYqWeight(getString(map.get("FE_PREGNANCYWEIGHT"))); + chuModel.setBaricIndex(getString(map.get("FE_BMI"))); + chuModel.setCestationInfo(getString(map.get(""))); + chuModel.setGonggao(getString(map.get("FE_UTERUSHEIGHT"))); + chuModel.setFuwei(getString(map.get("FE_ABGIRTH"))); + + Integer tireNum = 1; + if (map.get("FE_ISSECOND") !=null ) + { + tireNum = getInteger(map.get("FE_ISSECOND")) == 1 ? 2 : 1; + } + else if (map.get("FE_ISTHIRD") !=null ) + { + tireNum = getInteger(map.get("FE_ISSECOND")) == 1 ? 3 : 1; + } + chuModel.setTireNumber1(String.valueOf(tireNum)); + chuModel.setSyjg(getString(map.get(""))); +// chuModel.setPlacentas(); + chuModel.setHeart(getString(map.get("FE_HEART"))); + chuModel.setLungs(getString(map.get("FE_LUNGS"))); + chuModel.setVulva(getString(map.get("FE_VULVA"))); + chuModel.setVagina(getString(map.get("FE_VAGINA"))); + chuModel.setCervical(getString(map.get("FE_CERVICAL"))); + chuModel.setUterus(getString(map.get("FE_UTERUS"))); + chuModel.setFujian(getString(map.get("FE_ATTACHMENT"))); + chuModel.setCreated(getDate(map.get("FE_CREATETIME"))); + + String hid = getString(map.get("FE_HOSPITALID")); + if (hid != null && !"".equals(hid)) + { + String hname = getString(getOralceSingleObjBySql("select h_name from plat_hospital h where h.h_isvalid=1 and h_id = '" + hid + "'")); + String id = getString(getMysqlSingleObjBySql("select id from organization where name = '" + hname + "'")); + chuModel.setHospitalId(id); + } + if (map.get("FE_LBLOODPRESSURE") != null) + { + Map bpmap = new HashMap<>(); + bpmap.put("ssy",getInteger(map.get("FE_LBLOODPRESSURE"))); + bpmap.put("szy",getInteger(map.get("FE_LBLOODPRESSURE"))); + + chuModel.setBp(JsonUtil.obj2Str(bpmap)); + } + + mongoTemplate.save(chuModel); + } + } + + private static void syncFuzhen(String pid,String parentId, MongoTemplate mongoTemplate) + { + String sql = "SELECT * FROM ( SELECT A.*, ROWNUM RN FROM ( SELECT A.ER_ID AS ID,\n" + + " '' AS PID,\n" + + " B.P_NO AS PARENTID,\n" + + " (CASE WHEN ABS(MOD((FLOOR(A.ER_CHECKDATE - B.P_LASTMENSTRUALPERIOD)+1),7))=0 \n" + + " THEN '孕'||TO_CHAR(ABS(FLOOR((A.ER_CHECKDATE - B.P_LASTMENSTRUALPERIOD+1)/7)))||'周'\n" + + " ELSE '孕'||TO_CHAR(ABS(FLOOR((A.ER_CHECKDATE - B.P_LASTMENSTRUALPERIOD+1)/7)))||'周+'||TO_CHAR(ABS(MOD((FLOOR(A.ER_CHECKDATE - B.P_LASTMENSTRUALPERIOD)+1),7)))||'天'\n" + + " END) AS CURRENTDUEDATE,\n" + + " A.ER_CHIEF AS CHIEFCOMPLAINT,\n" + + " A.ER_WEIGHT AS WEIGHT,\n" + + " '{\"ssy\":'||A.ER_BBLOODPRESSURE||',\"szy\":'||A.ER_HBLOODPRESSURE||'}' AS BP,\n" + + " A.ER_UTERUSHEIGHT AS GONGGAO,\n" + + " A.ER_CIRCUMFERENCE AS ABDOMINALCIRCUMFERENCE,\n" + + " DECODE(A.ER_WATEREDEMA,'-',1,'++',2,'+++',3,'++++',4) AS EDEMA, \n" + + " (CASE WHEN 1=1\n" + + " --A.ER_FETALPOSITION_THD IS NOT NULL AND A.ER_FETALPOSITION_SEC IS NOT NULL AND A.ER_FETALPOSITION IS NOT NULL\n" + + " THEN '[{\"heartRate\":\"'||A.ER_HEARTRATE||'\",\"fetalPosition\":\"'||\n" + + " TO_CHAR(DECODE(A.ER_FETALPOSITION,'3777',1,'3778',2,'3779',3,'3780',4,'3781',5,'3782',6,'3783',7,'3784',8,'3785',9,'3786',10,'3787',11,'3788',12,'3789',13,'3790',14,'3791',15,'3792',16,'3793',17,'3794',18,'3795',19,'3796',20,'3797',21,'3798',22,'3799',23))||\n" + + " '\",\"fetalPresentation\":\"'||\n" + + " TO_CHAR(DECODE(A.ER_FETALPRESENTATION,'3772',1,'3773',2,'3774',3,'3775',4))||\n" + + " '\",\"join\":\"'||\n" + + " TO_CHAR(DECODE(A.ER_LINK,'37598072-1cdf-4548-97c3-3dfef08593f7',1,'e9490e8d-5b59-489a-e9ee-25e05dc08d69',2,'e9490e8d-5b59-e89a-89ee-25e05dc08d69',3))||\n" + + " '\"},{\"heartRate\":\"'||\n" + + " A.ER_HEARTRATE||'\",\"fetalPosition\":\"'||\n" + + " TO_CHAR(DECODE(A.ER_FETALPOSITION_SEC,'3777',1,'3778',2,'3779',3,'3780',4,'3781',5,'3782',6,'3783',7,'3784',8,'3785',9,'3786',10,'3787',11,'3788',12,'3789',13,'3790',14,'3791',15,'3792',16,'3793',17,'3794',18,'3795',19,'3796',20,'3797',21,'3798',22,'3799',23))||\n" + + " '\",\"fetalPresentation\":\"'||\n" + + " TO_CHAR(DECODE(A.ER_FETALPRESENTATION_SEC,'3772',1,'3773',2,'3774',3,'3775',4))||\n" + + " '\",\"join\":\"'||\n" + + " TO_CHAR(DECODE(A.ER_LINK_SEC,'37598072-1cdf-4548-97c3-3dfef08593f7',1,'e9490e8d-5b59-489a-e9ee-25e05dc08d69',2,'e9490e8d-5b59-e89a-89ee-25e05dc08d69',3))||\n" + + " '\"},{\"heartRate\":\"'||A.ER_HEARTRATE||'\",\"fetalPosition\":\"'||\n" + + " TO_CHAR(DECODE(A.ER_FETALPOSITION_THD,'3777',1,'3778',2,'3779',3,'3780',4,'3781',5,'3782',6,'3783',7,'3784',8,'3785',9,'3786',10,'3787',11,'3788',12,'3789',13,'3790',14,'3791',15,'3792',16,'3793',17,'3794',18,'3795',19,'3796',20,'3797',21,'3798',22,'3799',23))||\n" + + " '\",\"fetalPresentation\":\"'||\n" + + " TO_CHAR(DECODE(A.ER_FETALPRESENTATION_THD,'3772',1,'3773',2,'3774',3,'3775',4))||\n" + + " '\",\"join\":\"'||\n" + + " TO_CHAR(DECODE(A.ER_LINK_THD,'37598072-1cdf-4548-97c3-3dfef08593f7',1,'e9490e8d-5b59-489a-e9ee-25e05dc08d69',2,'e9490e8d-5b59-e89a-89ee-25e05dc08d69',3))||\n" + + " '\"}]'\n" + + " END) AS TIREDATA,\n" + + " A.ER_WHITEBLOOD AS HEMOGLOBIN,\n" + + " A.ER_URINARYPROTEIN AS URINEPROTEIN,\n" + + " A.ER_B AS BCHAO,\n" + + " A.ER_BLOODGLUCOSESCREENING AS BLOODSUGAR,\n" + + " '[\"'||REPLACE(TT.HIGH_RISK_ID,',','\",\"')||'\"]' AS RISKFACTOR,\n" + + " A.ER_CLASSIFICATION AS TYPE,\n" + + " A.ER_DEAL AS TREATMENTOPINION,\n" + + " A.ER_CHECKDATE AS CHECKDATE,\n" + + " A.ER_NEXTDATE AS NEXTCHECKTIME,\n" + + " A.ER_CREATETIME AS CREATED,\n" + + " A.ER_OPERTIME AS MODIFIED,\n" + + " H.E_HOSPITALID AS HOSPITALID,\n" + + " ABS(FLOOR((A.ER_CHECKDATE - B.P_LASTMENSTRUALPERIOD+1)/7)) AS CDUEWEEK,\n" + + " B.P_ISVALID AS YN\n" + + " \n" + + "FROM \n" + + " MOMMY_EXAMINERESULT A --初诊表\n" + + "----孕产婴用户表\n" + + "INNER JOIN MOMMY_PATIENT B ON A.ER_TRIAGEORDERNO=B.P_NO AND B.P_ISVALID=1\n" + + "--平台用户表 \n" + + "INNER JOIN PLAT_PATIENT C ON B.P_PLATPATIENTID=C.P_ID AND C.P_ISVALID=1\n" + + "--医生表\n" + + "INNER JOIN MOMMY_EMPLOYEE H ON H.E_ISVALID=1 AND A.ER_CREATOR=H.E_ID\n" + + "--医院表\n" + + "INNER JOIN PLAT_HOSPITAL F ON F.H_ID=H.E_HOSPITALID AND F.H_ISVALID=1 \n" + + "--高危数据\n" + + "LEFT JOIN \n" + + " (\n" + + " SELECT T.ME_EXAMINID,WMSYS.WM_CONCAT(T.HIGH_RISK_FACTOR) AS HIGH_RISK_FACTOR,WMSYS.WM_CONCAT(DISTINCT T.HIGH_RISK_GRADE) AS HIGH_RISK_GRADE,SUM(T.HIGH_RISK_VALUE) AS HIGH_RISK_VALUE,WMSYS.WM_CONCAT(T.HIGH_RISK_ID) AS HIGH_RISK_ID\n" + + " FROM \n" + + " (SELECT J.ME_EXAMINID,K.DC_NAME AS HIGH_RISK_FACTOR,L.DC_NAME AS HIGH_RISK_GRADE,TO_NUMBER(K.DC_NO) AS HIGH_RISK_VALUE,LL.ID AS HIGH_RISK_ID\n" + + " FROM \n" + + " --高危风险关系表\n" + + " MOMMY_EXAMINWARNING J\n" + + " --高危内容\n" + + " INNER JOIN PLAT_DATACONTENT K ON J.ME_WORNINGID = K.DC_ID AND K.DC_ISVALID=1 AND K.DC_DATATYPEID='fb43fd5a-b153-4cb9-9180-c46f5612ba43'\n" + + " --高危等级\n" + + " INNER JOIN PLAT_DATACONTENT L ON K.DC_PARENTID=L.DC_ID AND L.DC_ISVALID=1\n" + + " INNER JOIN LYMS_BASICCONFIG LL ON K.DC_NAME=LL.NAME\n" + + " -- UNION ALL \n" + + " --其他高危评分\n" + + " --SELECT M.ID,M.MO_CONTENT,M.MO_COLORNAME,M.MO_VALUES FROM MOMMY_OTHERWORNING M\n" + + " )T\n" + + " GROUP BY T.ME_EXAMINID \n" + + " )TT ON A.ER_ID=TT.ME_EXAMINID where replace(p_no,'-','') = '" + parentId + "') A WHERE ROWNUM <= 10 ) WHERE RN >= 0 "; + + + List> list = getListDataBySql(sql); + + + + for(Map map : list) + { + AntenatalExaminationModel antxModel = new AntenatalExaminationModel(); + antxModel.setPid(pid); + antxModel.setParentId(parentId); + antxModel.setId(getString(map.get("ID"))); + + antxModel.setCurrentDueDate(getString(map.get("CURRENTDUEDATE"))); + antxModel.setWeight(getDouble(map.get("WEIGHT"))); + antxModel.setBp(getString(map.get("BP"))); + antxModel.setGongGao(getString(map.get("GONGGAO"))); + antxModel.setAbdominalCircumference(getString(map.get("ABDOMINALCIRCUMFERENCE"))); + antxModel.setEdema(getString(map.get("EDEMA"))); + antxModel.setTireNumber(getString(map.get(""))); + + antxModel.setTireData(JsonUtil.toList(getString(map.get("TIREDATA")),Placenta.class)); + + antxModel.setHemoglobin(getString(map.get("HEMOGLOBIN"))); + antxModel.setUrineProtein(getString(map.get("URINEPROTEIN"))); + antxModel.setbChao(getString(map.get("BCHAO"))); + antxModel.setBloodSugar(getString(map.get("BLOODSUGAR"))); + antxModel.setRiskFactor(getString(map.get("RISKFACTOR"))); + antxModel.setRiskScore(getString(map.get(""))); + antxModel.setOtherRisk(getString(map.get(""))); + antxModel.setDiagnosis(getString(map.get(""))); + antxModel.setType(getString(map.get("TYPE"))); + antxModel.setTypeYc(getString(map.get(""))); + antxModel.setTreatmentOpinion(getString(map.get("TREATMENTOPINION"))); + antxModel.setGuide(getString(map.get(""))); + + antxModel.setCheckDoctor(getString(map.get(""))); + antxModel.setCheckDate(getDate(map.get("CHECKDATE"))); + antxModel.setNextCheckTime(getDate(map.get("NEXTCHECKTIME"))); + antxModel.setYn(getInteger(map.get("YN"))); + antxModel.setCreated(getDate(map.get("CREATED"))); + antxModel.setModified(getDate(map.get("MODIFIED"))); + antxModel.setHospitalId(getString(map.get("HOSPITALID"))); + antxModel.setcDueWeek(getString(map.get("CDUEWEEK"))); + + + antxModel.setChiefComplaint(getString(map.get("CHIEFCOMPLAINT"))); + antxModel.setcDueWeek(getString(map.get("CDUEWEEK"))); + mongoTemplate.save(antxModel); + } + } + + public static void syncBabyData() { + List> list = getListDataBySql(" SELECT * FROM ( SELECT A.*, ROWNUM RN FROM (select replace(m.PI_ID,'-','') as ID,m.* from MOMMY_PATIENTINFO m) A WHERE ROWNUM <= 10 ) WHERE RN >= 0 "); + + + MongoTemplate mongoTemplate = getMongoTemplate(); + + for (Map map : list) { + + PersonModel personModel = new PersonModel(); + personModel.setPhone(getString(map.get("PI_MOTHERPHONE"))); + personModel.setName(getString(map.get("PI_NAME"))); + personModel.setCardNo(getString(map.get("PI_IDENTITYCARDNUMBER"))); + personModel.setBirth(getDate(map.get("PI_BIRTHDAY"))); + personModel.setType(2); + personModel.setYn(YnEnums.YES.getId()); + personModel.setCreated(getDate(map.get("PI_CREATETIME"))); + personModel.setModified(getDate(map.get("PI_OPERTIME"))); + + mongoTemplate.save(personModel); + + BabyModel model = new BabyModel(); + model.setId(getString(map.get("ID"))); + model.setPid(personModel.getId()); + model.setCreated(getDate(map.get("PI_CREATETIME"))); + model.setModified(getDate(map.get("PI_OPERTIME"))); + model.setBirth(getDate(map.get("PI_BIRTHDAY"))); + model.setAddress(getString(map.get("PI_ADDRESS"))); + + model.setFname(getString(map.get("PI_FATHERNAME"))); + model.setFphone(getString(map.get("PI_FATHERPROFESSION"))); + model.setFbirth(getDate(map.get(""))); + + + String fproTypeId = getString(map.get("PI_FATHERPROFESSION")); + if (fproTypeId != null && !"".equals(fproTypeId)) { + String fproTypeName = getOracleBasicConfig(fproTypeId); + String id = getMongoBasicConfig(fproTypeName, SystemConfig.PROFESSION_TYPE_ID); + model.setFproTypeId(id); + } + + model.setFcertNo(getString(map.get(""))); + model.setFcertTypeId(getString(map.get(""))); + + String fLevelId = getString(map.get("PI_BBCULTURE")); + if (fLevelId != null && !"".equals(fLevelId)) { + String fLevelName = getOracleBasicConfig(fLevelId); + String id = getMongoBasicConfig(fLevelName, SystemConfig.LEVEL_TYPE_ID); + model.setfLevelId(id); + } + + model.setMname(getString(map.get("PI_MOTHERNAME"))); + model.setMphone(getString(map.get("PI_MOTHERPHONE"))); + model.setMbirth(getDate(map.get(""))); + + String mproTypeId = getString(map.get("PI_MATHERPROFESSION")); + if (mproTypeId != null && !"".equals(mproTypeId)) { + String mproTypeName = getOracleBasicConfig(mproTypeId); + String id = getMongoBasicConfig(mproTypeName, SystemConfig.PROFESSION_TYPE_ID); + model.setMproTypeId(id); + } + + model.setMcertNo(getString(map.get(""))); + model.setMcertTypeId(getString(map.get(""))); + + String mLevelId = getString(map.get("PI_MMCULTURE")); + if (mLevelId != null && !"".equals(mLevelId)) { + String mLevelName = getOracleBasicConfig(fLevelId); + String id = getMongoBasicConfig(mLevelName, SystemConfig.LEVEL_TYPE_ID); + model.setmLevelId(id); + } + + String zhuchanOrg = getString(map.get("PI_BIRTHASPHYXIA")); + if (zhuchanOrg != null && !"".equals(zhuchanOrg)) { + String id = getString(getMysqlSingleObjBySql("select id from organization where name = '" + zhuchanOrg + "'")); + model.setDeliverOrg(id); + } + + model.setCardNo(getString(map.get("PI_IDENTITYCARDNUMBER"))); + + String buildHospitalId = getString(map.get("PI_BOOKBUILDINGHOSPITALID")); + + + if (buildHospitalId != null && !"".equals(buildHospitalId)) { + String hname = getString(getOralceSingleObjBySql("select h_name from plat_hospital h where h.h_isvalid=1 and h_id = '" + buildHospitalId + "'")); + String id = getString(getMysqlSingleObjBySql("select id from organization where name = '" + hname + "'")); + model.setHospitalId(id); + } + + model.setBuildType(1); + model.setSex(getInteger(map.get("PI_SEX"))); + model.setName(getString(map.get("PI_NAME"))); + Integer yn = getInteger(map.get("PI_ISDELETE")); + model.setYn(yn); + + model.setDueType(getString(map.get(""))); + model.setFetusCount(getString(map.get(""))); + model.setDueCount(getString(map.get(""))); + model.setBabyWeight(getString(map.get("PI_WEIGHT"))); + model.setBabyHeight(getString(map.get("PI_HEIGHT"))); + model.setBabyHead(getString(map.get("PI_HEADSIZE"))); + model.setMalformation(getInteger(map.get(""))); + + + String doctorId = getString(map.get("PI_DOCTORID")); + if (doctorId != null && !"".equals(doctorId)) { + String hname = getString(getOralceSingleObjBySql("select e.e_name from mommy_employee e where e.e_id = '" + doctorId + "'")); + String id = getString(getMysqlSingleObjBySql("select id from users where name = '" + hname + "'")); + model.setBuildDoctor(id); + } + + model.setBuildDate(getDate(map.get("PI_CREATETIME"))); + + Integer isVip = getInteger(map.get("PI_ISVIP")); + Integer status = getInteger(map.get("PI_SERVICETYPE")); + if (isVip == 0) { + model.setServiceType(ServiceTypeEnums.STANDARD_SERVICE.getId()); + if (status != null) + { + if (status == 0) + { + model.setServiceStatus(ServiceStatusEnums.STANDARD_OPEN.getId()); + } + else + { + model.setServiceStatus(ServiceStatusEnums.NO_OPEN.getId()); + } + + } + + } + else if (isVip == 1) + { + model.setServiceType(ServiceTypeEnums.ADD_SERVICE.getId()); + + if (status == 0) + { + model.setServiceStatus(ServiceStatusEnums.ADD_OPEN.getId()); + } + else if (status == 1) + { + model.setServiceStatus(ServiceStatusEnums.SUSPEND.getId()); + } + else if (status == 2) + { + model.setServiceStatus(ServiceStatusEnums.UNSUBSCRIBE.getId()); + } + else if (status == 3) + { + model.setServiceStatus(ServiceStatusEnums.UNSUBSCRIBE.getId()); + } + else if (status == 4) + { + model.setServiceStatus(ServiceStatusEnums.ADD_OVERDUE.getId()); + } + } + + model.setVcCardNo(getString(map.get("PI_CARDNO"))); + model.setApgarScore(getString(map.get(""))); + model.setAsphyxiaM(getString(map.get(""))); + model.setPregnancyOut(getString(map.get("PI_BIRTHASPHYXIA"))); + model.setBabyHealthy(getString(map.get(""))); + model.setContactStartM(getString(map.get(""))); + model.setContactM(getString(map.get(""))); + model.setEarlySuck(getString(map.get(""))); + model.setDiagnose(getString(map.get(""))); + model.setNextDate(getDate(map.get(""))); + model.setLastHighRisk(getInteger(map.get("PI_KIDSTYPE"))); + String dueWeek = getString(map.get("PI_GESTATIONALWEEKS")); + if (dueWeek != null && !"".equals(dueWeek)) + { + String sp = "\\u002B"; + model.setDueWeek(Integer.parseInt(dueWeek.split(sp)[0])); + } + + mongoTemplate.save(model); + syncBabyCheck(model.getId(),mongoTemplate); + } + } + + public static void syncBabyCheck(String parentId,MongoTemplate mongoTemplate) + { + + + String sql = " select * from MOMMY_PATIENTINFO MP left join MOMMY_CHILDEXAMINRECORD MC ON MP.PI_ID = MC.CER_PATIENTID WHERE MP.Pi_Id= '"+parentId+"'"; + + List> list = getListDataBySql(sql); + for (Map map : list) + { + BabyCheckModel checkModel = new BabyCheckModel(); + + checkModel.setId(getString(map.get("CER_ID"))); + checkModel.setYn(YnEnums.YES.getId()); + checkModel.setBuildId(getString(map.get("CER_PATIENTID"))); + checkModel.setCheckDate(getDate(map.get("CER_EXAMINDATE"))); + + String hname = getString(map.get("CER_EXAMINHOSPITAL")); + if (hname != null && !"".equals(hname)) + { + String id = getString(getMysqlSingleObjBySql("select id from organization where name = '" + hname + "'")); + checkModel.setHospitalId(id); + } + checkModel.setCreated(getDate(map.get("CER_CREATETIME"))); + checkModel.setModified(getDate(map.get("CER_MODIFIEDTIME"))); + checkModel.setHighRisk(getInteger(map.get(""))); + checkModel.setNextDate(getDate(map.get("CER_NEXTEXAMINDATE"))); + + String doctorName = getString(map.get("CER_DOCTORSIGNATURE")); + if (doctorName != null && !"".equals(doctorName)) + { + String id = getString(getMysqlSingleObjBySql("select id from users where name = '" + doctorName + "'")); + checkModel.setCheckDoctor(id); + } + + checkModel.setGuideSuggest(getString(map.get("CER_DIRECTIVEOPINION"))); + checkModel.setHandlSuggest(getString(map.get("CER_REMARKS"))); + + checkModel.setMainFoster(getString(map.get(""))); + + + List> checkItems = getListDataBySql("SELECT A.e_Result,C.Ei_Name,B.CER_ID,B.CER_PATIENTID\n" + + " FROM MOMMY_EXAMINE A " + + " INNER JOIN MOMMY_CHILDEXAMINRECORD B ON A.E_CHILDEXAMINID=B.CER_ID " + + " INNER JOIN MOMMY_EXAMINEINFO C ON A.E_EXAMINEID=C.EI_ID " + + + " and B.CER_PATIENTID = '"+getString(map.get("CER_PATIENTID"))+"' " + + " and B.Cer_Id='"+getString(map.get("CER_ID"))+"'"); + + for (Map item : checkItems) + { + String result =getString(item.get("E_RESULT")); + String itemName = getString(item.get("EI_NAME")); + if ("喂养方式".equals(getString(item.get("EI_NAME")))) + { + checkModel.setFeedType(WyTypeEnums.getIdByName(result)); + } + else if ("户外活动".equals(getString(item.get("EI_NAME")))) + { + checkModel.setActivity(result); + } + else if ("服用维生素D".equals(getString(item.get("EI_NAME")))) + { + checkModel.setVitaminD(result); + } + else if ("体温".equals(itemName)) + { + checkModel.setTemperature(result); + } + else if ("身长".equals(itemName)) + { + checkModel.setHeight(result); + } + else if ("体重".equals(itemName)) + { + checkModel.setWeight(result); + } + else if ("身高别体重".equals(itemName)) + { + checkModel.setHeightWeight(result); + } + else if ("头围".equals(itemName)) + { + checkModel.setHeightWeight(result); + } + else if ("胸围".equals(itemName)) + { + checkModel.setChestw(result); + } + else if ("体格发育评价".equals(itemName)) + { + checkModel.setGrowthEvaluate(result); + } + else if ("经皮胆红素".equals(itemName)) + { + //头:9.5|胸:10.0|腹:10.0 + String[] arrs = result.split("|"); + for (String str : arrs) + { + if (str.startsWith("头")) + { + checkModel.setBilirubinHead(str.split(":")[1]); + } + else if (str.startsWith("胸")) + { + checkModel.setBilirubinChest(str.split(":")[1]); + } + else if (str.startsWith("腹")) + { + checkModel.setBilirubinBelly(str.split(":")[1]); + } + } + } + else if ("前囟".equals(itemName)) + { + //{"yeaOrNo":"no","wbhcc1":"5","wbhcc2":"5"} + //未闭合|1*1 未闭合|1.5×1.5 + Map bregma = new HashMap(); + if ("闭合".equals(result)) + { + bregma.put("yeaOrNo","yes"); + } + else if (result != null && result.startsWith("未闭合")) + { + bregma.put("yeaOrNo", "no"); + String[] arrs = result.split("|"); + if (arrs[1] != null && !"".equals(arrs[1])) + { + String[] items = arrs[1].split("×").length == 0 ? arrs[1].split("\\u002A") : arrs[1].split("×"); + if (items != null && items.length > 0) + { + if (items.length == 1) + { + bregma.put("wbhcc1",items[0]); + } + else + { + bregma.put("wbhcc1",items[0]); + bregma.put("wbhcc2",items[1]); + } + } + + } + } + checkModel.setBregma(result); + } + else if ("出牙数".equals(itemName)) + { + checkModel.setTooth(result); + } + else if ("面色".equals(itemName)) + { + checkModel.setFaceColor(result); + } + else if ("眼".equals(itemName)) + { + checkModel.setEye(result); + } + else if ("眼【视力】".equals(itemName)) + { + checkModel.setEyesight(result); + } + else if ("耳".equals(itemName)) + { + checkModel.setEar(result); + } + else if ("听力".equals(itemName)) + { + checkModel.setHearing(result); + } + else if ("颈部/胸部".equals(itemName)) + { + checkModel.setNeck(result); + checkModel.setChest(result); + } + else if ("腹部".equals(itemName)) + { + checkModel.setBelly(result); + } + else if ("脊柱四肢".equals(itemName)) + { + checkModel.setSpineFours(result); + } + else if ("肛门/外生殖器".equals(itemName)) + { + checkModel.setPortaGenitals(result); + } + else if ("可疑佝偻病症状".equals(itemName)) + { + checkModel.setStoopStatus(result); + } + else if ("可疑佝偻病体征".equals(itemName)) + { + checkModel.setStoopSign(result); + } + else if ("神经系统检查".equals(itemName)) + { + checkModel.setNerve(result); + } + else if ("骨密度Z值".equals(itemName)) + { + checkModel.setBonez(result); + } + else if ("血红蛋白值".equals(itemName)) + { + checkModel.setHemoglobin(result); + } + else if ("白细胞".equals(itemName)) + { + checkModel.setWhiteCell(result); + } + else if ("白细胞".equals(itemName)) + { + checkModel.setWhiteCell(result); + } + } + + mongoTemplate.save(checkModel); + } + + + } + + + public static String getMongoBasicConfig(String name,String parentId) + { + return getString(getOralceSingleObjBySql("select id from lyms_basicconfig where name='" + name + "' and parentId='" + parentId + "'")); + } + + public static String getOracleBasicConfig(String id) + { + return getString(getOralceSingleObjBySql("select dc_name from plat_datacontent where dc_id='" + id + "'")); + } + + + public static String getString(Object obj) + { + return obj == null ? null : String.valueOf(obj); + } + + public static Double getDouble(Object obj) + { + return obj == null ? null : Double.valueOf(String.valueOf(obj)); + } + + public static Integer getInteger(Object obj) + { + return obj == null ? null : Integer.valueOf(String.valueOf(obj)); + } + + public static Date getDate(Object obj) + { + return obj == null ? null : (Date)obj; + } + + public static class Placenta{ + //心率 + private Double heartRate; + //胎方位 + private String fetalPosition; + //胎先露 + private String fetalPresentation; + // 衔接 + private String join; + + public String getFetalPosition() { + return fetalPosition; + } + + public void setFetalPosition(String fetalPosition) { + this.fetalPosition = fetalPosition; + } + + public String getFetalPresentation() { + return fetalPresentation; + } + + public void setFetalPresentation(String fetalPresentation) { + this.fetalPresentation = fetalPresentation; + } + + public Double getHeartRate() { + return heartRate; + } + + public void setHeartRate(Double heartRate) { + this.heartRate = heartRate; + } + + public String getJoin() { + return join; + } + + public void setJoin(String join) { + this.join = join; + } + } + + public static void main(String[] args) + { +// MongoTemplate template = getMongoTemplate(); +// AggregationOperation match = Aggregation.match(Criteria.where("_id").is("88ff423d07bf4d40b4fa331e6fe0e32a")); +// AggregationOperation group = Aggregation.group("_id"); +// Aggregation aggregation = Aggregation.newAggregation(match, group); +// AggregationResults result = template.aggregate(aggregation, "lyms_patient_test", BabyCheckModel.class); +// List list = result.getMappedResults(); +// System.out.print(list); +// DBCollection conn = template.getCollection("lyms_patient_test"); +// conn.up + + syncBabyData(); + } +}