@ -235,9 +235,9 @@ public class beHospitaledController {
obj1 . setFrecName ( "标题" + i ) ;
obj1 . setFentryNo ( ( 808 + i ) + "" ) ;
obj1 . setFentryName ( "分类" + ( 808 + i ) ) ;
obj1 . setFfileId ( ( 4234 + i ) + "" ) ;
if ( i > = 2 ) {
obj1 . setPdfflag ( "1" ) ;
obj1 . setFfileId ( ( 4234 + i ) + "" ) ;
} else {
obj1 . setPdfflag ( "0" ) ;
}
@ -268,34 +268,42 @@ public class beHospitaledController {
//赋值两时间:最近上传时间与最新手动提交时间
private void setTwoTimeForList ( List < HisCollectInfo > list ) {
StringBuilder fileIdsStr = new StringBuilder ( ) ;
for ( int i = 0 ; i < list . size ( ) ; i + + ) {
String ffileId = list . get ( i ) . getFfileId ( ) ;
if ( i ! = 0 ) {
fileIdsStr . append ( "," ) ;
for ( HisCollectInfo hisCollectInfo1 : list ) {
String ffileId = hisCollectInfo1 . getFfileId ( ) ;
if ( StringUtils . isNotBlank ( ffileId ) ) {
if ( StringUtils . isNotBlank ( fileIdsStr ) ) {
fileIdsStr . append ( "," ) ;
}
fileIdsStr . append ( "'" ) . append ( ffileId ) . append ( "'" ) ;
}
fileIdsStr . append ( "'" ) . append ( ffileId ) . append ( "'" ) ;
}
//查询detail表的上传时间
List < Archive_Detail > archiveDetails = detailMapper . selectUpdateTimeBySubAssort ( fileIdsStr . toString ( ) ) ;
//查询archive_sumbitDate_info的提交时间
List < ArchiveSumbitdateInfo > archiveSumbitdateInfoList = sumbitdateInfoMapper . selectOneBy FileId( fileIdsStr . toString ( ) ) ;
List < ArchiveSumbitdateInfo > archiveSumbitdateInfoList = sumbitdateInfoMapper . selectOneBy PatientId( list . get ( 0 ) . getFpatno ( ) , null , null ) ;
if ( ! CollectionUtils . isEmpty ( archiveDetails ) | | ! CollectionUtils . isEmpty ( archiveSumbitdateInfoList ) ) {
for ( HisCollectInfo hisCollectInfo : list ) {
String ffileId = hisCollectInfo . getFfileId ( ) ;
if ( StringUtils . isNotBlank ( ffileId ) ) {
if ( ! CollectionUtils . isEmpty ( archiveDetails ) ) {
for ( Archive_Detail archiveDetail : archiveDetails ) {
if ( ffileId . equals ( archiveDetail . getSubassort ( ) ) ) {
hisCollectInfo . setUpdateLoadTime ( archiveDetail . getUploaddatetime ( ) ) ;
break ;
}
//分类编号
String fentryNo = hisCollectInfo . getFentryNo ( ) ;
if ( ! CollectionUtils . isEmpty ( archiveDetails ) & & StringUtils . isNotBlank ( ffileId ) ) {
for ( Archive_Detail archiveDetail : archiveDetails ) {
if ( ffileId . equals ( archiveDetail . getSubassort ( ) ) ) {
hisCollectInfo . setUpdateLoadTime ( archiveDetail . getUploaddatetime ( ) ) ;
break ;
}
}
if ( ! CollectionUtils . isEmpty ( archiveSumbitdateInfoList ) ) {
for ( ArchiveSumbitdateInfo info : archiveSumbitdateInfoList ) {
if ( ffileId . equals ( info . getFileId ( ) ) ) {
}
if ( ! CollectionUtils . isEmpty ( archiveSumbitdateInfoList ) ) {
for ( ArchiveSumbitdateInfo info : archiveSumbitdateInfoList ) {
String fentryNoTemp = info . getFentryNo ( ) ;
if ( StringUtils . isNotBlank ( fentryNo ) & & StringUtils . isNotBlank ( fentryNoTemp ) & & fentryNo . equals ( fentryNoTemp ) ) {
if ( StringUtils . isNotBlank ( ffileId ) & & StringUtils . isNotBlank ( ffileId ) & & ffileId . equals ( info . getFileId ( ) ) ) {
hisCollectInfo . setSumbitTime ( info . getCreateTime ( ) ) ;
break ;
} else {
//取分类的最后一个
hisCollectInfo . setSumbitTime ( info . getCreateTime ( ) ) ;
}
}
}
@ -306,7 +314,7 @@ public class beHospitaledController {
//组织sql语句查询orcle查询文件完成情况
private String getSelectSqlForGetPdfCollect ( HisCollectInfo collectInfo ) {
String sql = "select F ENTRY_NO,FENTRY_NAME,FREC_NAME,FFILE_ID,PDF_FLAG from pacs.v_emrpdf_rec where fpatno = '"+ collectInfo . getFpatno ( ) + "'" ;
String sql = "select F PATNO,F ENTRY_NO,FENTRY_NAME,FREC_NAME,FFILE_ID,PDF_FLAG from pacs.v_emrpdf_rec where fpatno = '"+ collectInfo . getFpatno ( ) + "'" ;
//标题
String frecName = collectInfo . getFrecName ( ) ;
if ( StringUtils . isNotBlank ( frecName ) ) {
@ -342,14 +350,15 @@ public class beHospitaledController {
if ( StringUtils . isBlank ( fentryNos ) ) {
return Msg . fail ( "分类编号不能为空" ) ;
}
if ( StringUtils . isBlank ( ffileIds ) ) {
return Msg . fail ( "文件id不能为空" ) ;
}
String [ ] fentryNoList = fentryNos . split ( "," ) ;
String [ ] ffileIdList = ffileIds . split ( "," ) ;
for ( int i = 0 ; i < fentryNoList . length ; i + + ) {
if ( StringUtils . isNotBlank ( fentryNoList [ i ] ) ) {
String sql = "insert into pacs.p_pdf_print(FENTRYNO,FPATNO,FAPPLYTIME,FFILE_ID) values('" + fentryNoList [ i ] + "','" + fpatno + "','" + fapplytime + "','" + ffileIdList [ i ] + "')" ;
String fileId = null ;
if ( StringUtils . isNotBlank ( ffileIdList [ i ] ) & & ! "undefined" . equals ( ffileIdList [ i ] ) ) {
fileId = "'" + ffileIdList [ i ] + "'" ;
}
String sql = "insert into pacs.p_pdf_print(FENTRYNO,FPATNO,FAPPLYTIME,FFILE_ID) values('" + fentryNoList [ i ] + "','" + fpatno + "','" + fapplytime + "'," + fileId + ")" ;
log . info ( "优先采集插入语句:" + sql ) ;
try {
OracleConnect . insert ( sql ) ;
@ -359,7 +368,7 @@ public class beHospitaledController {
log . info ( "优先采集插入oracle失败,请查看error.log文件" ) ;
ExceptionPrintUtil . printException ( e ) ;
}
if ( insertSubmitDateInfo ( f applytime, ffileIdList [ i ] ) ) {
if ( insertSubmitDateInfo ( f patno, f applytime, fentryNoList [ i ] , ffileIdList [ i ] ) ) {
return Msg . fail ( "服务器内部出错,请联系系统管理员!" ) ;
}
}
@ -367,13 +376,18 @@ public class beHospitaledController {
return Msg . success ( ) ;
}
private boolean insertSubmitDateInfo ( String f applytime, String fileId ) {
private boolean insertSubmitDateInfo ( String f patno, String f applytime, String fentryNo , String fileId ) {
//插入记录
ArchiveSumbitdateInfo info = new ArchiveSumbitdateInfo ( ) ;
info . setPatientId ( fpatno ) ;
info . setFentryNo ( fentryNo ) ;
if ( StringUtils . isBlank ( fileId ) | | "undefined" . equals ( fileId ) ) {
fileId = null ;
}
info . setFileId ( fileId ) ;
//查询时候存在,存在更新,不存在添加
try {
List < ArchiveSumbitdateInfo > archiveSumbitdateInfoList = sumbitdateInfoMapper . selectOneByFileId ( "'" + fileId + "'" ) ;
List < ArchiveSumbitdateInfo > archiveSumbitdateInfoList = sumbitdateInfoMapper . selectOneBy PatientId( fpatno , fentryNo , fileId ) ;
info . setCreateTime ( fapplytime ) ;
if ( ! CollectionUtils . isEmpty ( archiveSumbitdateInfoList ) ) {
ArchiveSumbitdateInfo archiveSumbitdateInfo = archiveSumbitdateInfoList . get ( 0 ) ;