@ -5,13 +5,16 @@
package com.ann.demo.interfaces.impl ;
import com.ann.demo.entity.filing.OracleDzbl ;
import com.ann.demo.entity.filing.OraclePACS ;
import com.ann.demo.entity.filing.OracleHL ;
import com.ann.demo.interfaces.HomepageDictionary ;
import java.math.BigDecimal ;
import java.util.* ;
import javax.jws.WebService ;
import com.ann.demo.service.OracleDzblService ;
import com.ann.demo.service.OraclePacsService ;
import com.ann.demo.service.OracleHLService ;
import com.ann.demo.util.OracleConnect ;
@ -30,72 +33,44 @@ public class HomepageDictionaryImpl implements HomepageDictionary {
OracleHLService oracleHLService ;
@Autowired
OraclePacsService oraclePacsService ;
@Autowired
OracleDzblService oracleDzblService ;
//同步护理记录
@Override
public String Synchronizationhuli ( String configureTime ) {
String sql1 = "SELECT DISTINCT JZH,ZYH,ZYCS FROM V_JSWZH_HL_DATA WHERE (ENABLED_VALUE = 'Y' OR ENABLED_VALUE IS NULL) AND SHOW_NAME != '护嘱单' AND SHOW_NAME != '术前准备与手术交接记录单' AND SHOW_NAME != '新生儿转NICU交接记录单' AND SHOW_NAME != '护理计划' AND SHOW_NAME != '首次护理记录单(二)' AND SHOW_NAME != '健康教育' AND SHOW_NAME != '产程图' AND SHOW_NAME != '普外科术后疼痛护理单' and KDSJ > to_date('" + configureTime + "', 'YYYY/MM/DD HH24:MI:SS') ";
String sql1 = "SELECT * FROM V_JSWZH_FILE_SL WHERE UPDATE_TIME >'" + configureTime + "' AND THEME_CODE='移动护理文书' ";
try {
List < Map > selectList1 = OracleConnect . selectListConvertMap ( sql1 ) ;
if ( ! CollectionUtils . isEmpty ( selectList1 ) ) {
for ( Map map1 : selectList1 ) {
String jzh = ( String ) map1 . get ( "JZH" ) ;
String zyh = ( String ) map1 . get ( "ZYH" ) ;
String zycs = map1 . get ( "ZYCS" ) . toString ( ) ;
String typeCode = ( String ) map1 . get ( "THEME_CODE" ) ;
BigDecimal otherNum = ( BigDecimal ) map1 . get ( "SL" ) ;
String updateTime = ( String ) map1 . get ( "UPDATE_TIME" ) ;
//查询是否有记录
List < OracleHL > oracleHByJzh = oracleHLService . getOracleHByJzh ( jzh , zyh , zycs ) ;
List < OracleHL > oracleHByJzh = oracleHLService . getOracleHByJzh ( jzh , zyh ) ;
//存在则更新
if ( oracleHByJzh . size ( ) > 0 ) {
oracleHLService . del ( jzh , zyh , zycs ) ;
String sqlHl = "SELECT SHOW_NAME,KDSJ,JZH,ZYH,ZYCS FROM V_JSWZH_HL_DATA WHERE (ENABLED_VALUE = 'Y' OR ENABLED_VALUE IS NULL) AND SHOW_NAME != '护嘱单' AND SHOW_NAME != '术前准备与手术交接记录单' AND SHOW_NAME != '新生儿转NICU交接记录单' AND SHOW_NAME != '护理计划' AND SHOW_NAME != '首次护理记录单(二)' AND SHOW_NAME != '健康教育' AND SHOW_NAME != '产程图' AND SHOW_NAME != '普外科术后疼痛护理单' and JZH = '" + jzh + "' and ZYH = '" + zyh + "' and ZYCS = '" + zycs + "'" ;
List < Map > mapHl = OracleConnect . selectListConvertMap ( sqlHl ) ;
for ( Map oracleHl : mapHl ) {
String jzhHl = ( String ) oracleHl . get ( "JZH" ) ;
//获取文件名
String showName = ( String ) oracleHl . get ( "SHOW_NAME" ) ;
Date kdsjDate = null ;
if ( null ! = oracleHl . get ( "KDSJ" ) ) {
try {
kdsjDate = ( Date ) oracleHl . get ( "KDSJ" ) ;
} catch ( Exception e ) {
e . printStackTrace ( ) ;
}
}
String zyhhl = ( String ) map1 . get ( "ZYH" ) ;
String zycshl = ( String ) map1 . get ( "ZYCS" ) . toString ( ) ;
OracleHL oracleHL = new OracleHL ( ) ;
oracleHL . setShowName ( showName ) ;
oracleHL . setKdsj ( kdsjDate ) ;
oracleHL . setJzh ( jzhHl ) ;
oracleHL . setZyh ( zyhhl ) ;
oracleHL . setZycs ( zycshl ) ;
oracleHLService . save ( oracleHL ) ;
}
} else {
oracleHLService . del ( jzh , zyh , "移动护理文书" ) ;
OracleHL oracleHL = new OracleHL ( ) ;
oracleHL . setZyh ( zyh ) ;
oracleHL . setJzh ( jzh ) ;
oracleHL . setTypeCode ( typeCode ) ;
oracleHL . setOtherNum ( otherNum ) ;
oracleHL . setUpdateTime ( updateTime ) ;
oracleHLService . save ( oracleHL ) ;
} else {
//不存在则新增
String sqlHl = "SELECT SHOW_NAME,KDSJ,JZH,ZYH,ZYCS FROM V_JSWZH_HL_DATA WHERE (ENABLED_VALUE = 'Y' OR ENABLED_VALUE IS NULL) AND SHOW_NAME != '护嘱单' AND SHOW_NAME != '术前准备与手术交接记录单' AND SHOW_NAME != '新生儿转NICU交接记录单' AND SHOW_NAME != '护理计划' AND SHOW_NAME != '首次护理记录单(二)' AND SHOW_NAME != '健康教育' AND SHOW_NAME != '产程图' AND SHOW_NAME != '普外科术后疼痛护理单' and JZH = '" + jzh + "' and ZYH = '" + zyh + "' and ZYCS = '" + zycs + "'" ;
List < Map > mapHl = OracleConnect . selectListConvertMap ( sqlHl ) ;
for ( Map oracleHl : mapHl ) {
String jzhHl = ( String ) oracleHl . get ( "JZH" ) ;
//获取文件名
String showName = ( String ) oracleHl . get ( "SHOW_NAME" ) ;
Date kdsjDate = null ;
if ( null ! = oracleHl . get ( "KDSJ" ) ) {
try {
kdsjDate = ( Date ) oracleHl . get ( "KDSJ" ) ;
} catch ( Exception e ) {
e . printStackTrace ( ) ;
}
}
String zyhhl = ( String ) map1 . get ( "ZYH" ) ;
String zycshl = ( String ) map1 . get ( "ZYCS" ) . toString ( ) ;
OracleHL oracleHL = new OracleHL ( ) ;
oracleHL . setShowName ( showName ) ;
oracleHL . setKdsj ( kdsjDate ) ;
oracleHL . setJzh ( jzhHl ) ;
oracleHL . setZyh ( zyhhl ) ;
oracleHL . setZycs ( zycshl ) ;
oracleHLService . save ( oracleHL ) ;
}
OracleHL oracleHL = new OracleHL ( ) ;
oracleHL . setZyh ( zyh ) ;
oracleHL . setJzh ( jzh ) ;
oracleHL . setTypeCode ( typeCode ) ;
oracleHL . setOtherNum ( otherNum ) ;
oracleHL . setUpdateTime ( updateTime ) ;
oracleHLService . save ( oracleHL ) ;
}
}
}
@ -105,40 +80,117 @@ public class HomepageDictionaryImpl implements HomepageDictionary {
return null ;
}
//同步Pacs
@Override
public String SynchronizationPacs ( String configureTime ) {
String sql1 = "SELECT VISIT_ID,ZYH,REPORT_NAME,PDF_FILE_NO,REGISTER_TIME FROM V_JSWZH_PACS_DATA_NEW WHERE REGISTER_TIME > to_date('" + configureTime + "', 'YYYY/MM/DD HH24:MI:SS') ";
String sql1 = "SELECT * FROM V_JSWZH_FILE_SL WHERE UPDATE_TIME >'" + configureTime + "' AND THEME_CODE='PACS文档' ";
try {
List < Map > selectList1 = OracleConnect . selectListConvertMap ( sql1 ) ;
if ( ! CollectionUtils . isEmpty ( selectList1 ) ) {
for ( Map map1 : selectList1 ) {
String pdfFileNo = ( String ) map1 . get ( "PDF_FILE_NO" ) ;
String jzh = ( String ) map1 . get ( "JZH" ) ;
String zyh = ( String ) map1 . get ( "ZYH" ) ;
String typeCode = ( String ) map1 . get ( "THEME_CODE" ) ;
BigDecimal otherNum = ( BigDecimal ) map1 . get ( "SL" ) ;
String updateTime = ( String ) map1 . get ( "UPDATE_TIME" ) ;
//查询是否有记录
List < OraclePACS > oracleHByFrecId = oraclePacsService . getOracleHByFrecId ( pdfFileNo ) ;
//有记录更新
if ( oracleHByFrecId . size ( ) > 0 ) {
oraclePacsService . del ( pdfFileNo ) ;
List < OracleHL > oraclePacsByJzh = oraclePacsService . getOraclePacsByJzh ( jzh , zyh ) ;
//存在则更新
if ( oraclePacsByJzh . size ( ) > 0 ) {
oraclePacsService . del ( jzh , zyh , "PACS文档" ) ;
OraclePACS oraclePACS = new OraclePACS ( ) ;
oraclePACS . setZyh ( zyh ) ;
oraclePACS . setJzh ( jzh ) ;
oraclePACS . setTypeCode ( typeCode ) ;
oraclePACS . setOtherNum ( otherNum ) ;
oraclePACS . setUpdateTime ( updateTime ) ;
oraclePacsService . save ( oraclePACS ) ;
//不存在则新增
} else {
OraclePACS oraclePACS = new OraclePACS ( ) ;
oraclePACS . setZyh ( zyh ) ;
oraclePACS . setJzh ( jzh ) ;
oraclePACS . setTypeCode ( typeCode ) ;
oraclePACS . setOtherNum ( otherNum ) ;
oraclePACS . setUpdateTime ( updateTime ) ;
oraclePacsService . save ( oraclePACS ) ;
}
String jzh = ( String ) map1 . get ( "VISIT_ID" ) ;
}
}
} catch ( Exception e ) {
e . printStackTrace ( ) ;
}
return null ;
}
//同步Pacs
@Override
public String SynchronizationDzbl ( String configureTime ) {
String sql1 = "SELECT ZYH,FPAT_NO FROM VIEW_DOCTOR_DATA_2 WHERE FISAVAILABLE = 'Y' AND FENTRY_NAME NOT IN ('手术同意书','手术安全审核单','手术风险评估单','彩超检查申请单','X线检查申请单','B超检查申请单','电子支气管镜检查申请单','CT检查申请单','MRI检查申请单','组织病理学送检单','细胞病理学送检单','知情沟通记录') AND FLOGLUDATE > to_date('" + configureTime + "', 'YYYY/MM/DD HH24:MI:SS')" ;
try {
List < Map > selectList1 = OracleConnect . selectListConvertMap ( sql1 ) ;
if ( ! CollectionUtils . isEmpty ( selectList1 ) ) {
for ( Map map1 : selectList1 ) {
String zyh = ( String ) map1 . get ( "ZYH" ) ;
//获取文件名
String fentryName = ( String ) map1 . get ( "REPORT_NAME" ) ;
Date affirmTime = null ;
if ( null ! = map1 . get ( "REGISTER_TIME" ) ) {
try {
affirmTime = ( Date ) map1 . get ( "REGISTER_TIME" ) ;
} catch ( Exception e ) {
e . printStackTrace ( ) ;
String jzh = ( String ) map1 . get ( "FPAT_NO" ) ;
List < OracleDzbl > oracleDzblByJzh = oracleDzblService . getOracleDzblByJzh ( jzh , zyh ) ;
//存在则更新
if ( oracleDzblByJzh . size ( ) > 0 ) {
oracleDzblService . del ( jzh , zyh ) ;
String sql2 = "SELECT ZYH,FREC_ID,FREC_NAME,FPAT_NO,FLOGLUDATE FROM VIEW_DOCTOR_DATA_2 WHERE FISAVAILABLE = 'Y' AND FENTRY_NAME NOT IN ('手术同意书','手术安全审核单','手术风险评估单','彩超检查申请单','X线检查申请单','B超检查申请单','电子支气管镜检查申请单','CT检查申请单','MRI检查申请单','组织病理学送检单','细胞病理学送检单','知情沟通记录') AND ZYH='" + zyh + "' AND FPAT_NO='" + jzh + "'" ;
List < Map > selectList2 = OracleConnect . selectListConvertMap ( sql2 ) ;
if ( ! CollectionUtils . isEmpty ( selectList2 ) ) {
for ( Map map2 : selectList2 ) {
String zyh1 = ( String ) map2 . get ( "ZYH" ) ;
String jzh1 = ( String ) map2 . get ( "FPAT_NO" ) ;
String frecId = ( String ) map2 . get ( "FREC_ID" ) ;
String frecName = ( String ) map2 . get ( "FREC_NAME" ) ;
Date updateTime = null ;
if ( null ! = map2 . get ( "FLOGLUDATE" ) ) {
try {
updateTime = ( Date ) map2 . get ( "FLOGLUDATE" ) ;
} catch ( Exception e ) {
e . printStackTrace ( ) ;
}
}
OracleDzbl oracleDzbl = new OracleDzbl ( ) ;
oracleDzbl . setJzh ( jzh1 ) ;
oracleDzbl . setZyh ( zyh1 ) ;
oracleDzbl . setFrecId ( frecId ) ;
oracleDzbl . setFrecName ( frecName ) ;
oracleDzbl . setFlogluDate ( updateTime ) ;
oracleDzblService . save ( oracleDzbl ) ;
}
}
} else {
String sql2 = "SELECT ZYH,FREC_ID,FREC_NAME,FPAT_NO,FLOGLUDATE FROM VIEW_DOCTOR_DATA_2 WHERE FISAVAILABLE = 'Y' AND FENTRY_NAME NOT IN ('手术同意书','手术安全审核单','手术风险评估单','彩超检查申请单','X线检查申请单','B超检查申请单','电子支气管镜检查申请单','CT检查申请单','MRI检查申请单','组织病理学送检单','细胞病理学送检单','知情沟通记录') AND ZYH='" + zyh + "' AND FPAT_NO='" + jzh + "'" ;
List < Map > selectList2 = OracleConnect . selectListConvertMap ( sql2 ) ;
if ( ! CollectionUtils . isEmpty ( selectList2 ) ) {
for ( Map map2 : selectList2 ) {
String zyh1 = ( String ) map2 . get ( "ZYH" ) ;
String jzh1 = ( String ) map2 . get ( "FPAT_NO" ) ;
String frecId = ( String ) map2 . get ( "FREC_ID" ) ;
String frecName = ( String ) map2 . get ( "FREC_NAME" ) ;
Date updateTime = null ;
if ( null ! = map2 . get ( "FLOGLUDATE" ) ) {
try {
updateTime = ( Date ) map2 . get ( "FLOGLUDATE" ) ;
} catch ( Exception e ) {
e . printStackTrace ( ) ;
}
}
OracleDzbl oracleDzbl = new OracleDzbl ( ) ;
oracleDzbl . setJzh ( jzh1 ) ;
oracleDzbl . setZyh ( zyh1 ) ;
oracleDzbl . setFrecId ( frecId ) ;
oracleDzbl . setFrecName ( frecName ) ;
oracleDzbl . setFlogluDate ( updateTime ) ;
oracleDzblService . save ( oracleDzbl ) ;
}
}
}
OraclePACS oraclePACS = new OraclePACS ( ) ;
oraclePACS . setJzh ( jzh ) ;
oraclePACS . setZyh ( zyh ) ;
oraclePACS . setAffirmTime ( affirmTime ) ;
oraclePACS . setFentryName ( fentryName ) ;
oraclePACS . setPdfFileNo ( pdfFileNo ) ;
oraclePacsService . save ( oraclePACS ) ;
}
}
} catch ( Exception e ) {
@ -146,4 +198,5 @@ public class HomepageDictionaryImpl implements HomepageDictionary {
}
return null ;
}
}