|
|
|
@ -39,6 +39,7 @@ import javax.servlet.http.HttpServletResponse;
|
|
|
|
|
import java.text.SimpleDateFormat;
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
|
import java.util.Date;
|
|
|
|
|
import java.util.LinkedList;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
|
|
@Controller
|
|
|
|
@ -249,20 +250,63 @@ public class beHospitaledController {
|
|
|
|
|
list = OracleConnect.select1(sql);
|
|
|
|
|
}catch (Exception e){
|
|
|
|
|
ExceptionPrintUtil.printException(e);
|
|
|
|
|
log.error("优先采集查询oracle出错,请查看error.log文件");
|
|
|
|
|
log.info("优先采集查询oracle出错,请查看error.log文件");
|
|
|
|
|
}
|
|
|
|
|
log.info("list数量:"+list.size()+"个->list:"+list);
|
|
|
|
|
//赋值两时间:最近上传时间与最新手动提交时间
|
|
|
|
|
if(!CollectionUtils.isEmpty(list)) {
|
|
|
|
|
setTwoTimeForList(list);
|
|
|
|
|
log.info("优先采集查询成功!");
|
|
|
|
|
//判断是否带标题或编号
|
|
|
|
|
list = selectListTemp(collectInfo,list);
|
|
|
|
|
if(!CollectionUtils.isEmpty(list)) {
|
|
|
|
|
setTwoTimeForList(list);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
log.info("优先采集查询成功!");
|
|
|
|
|
return JSON.toJSONString(list);
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
ExceptionPrintUtil.printException(e);
|
|
|
|
|
}
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
//判断是否带标题或编号
|
|
|
|
|
private List<HisCollectInfo> selectListTemp(HisCollectInfo collectInfo, List<HisCollectInfo> list) {
|
|
|
|
|
//定义临时变量
|
|
|
|
|
int flag = 0;
|
|
|
|
|
//标题
|
|
|
|
|
String frecName = collectInfo.getFrecName();
|
|
|
|
|
if(StringUtils.isNotBlank(frecName)){
|
|
|
|
|
flag = 1;
|
|
|
|
|
}
|
|
|
|
|
//分类编码
|
|
|
|
|
String fentryNo = collectInfo.getFentryNo();
|
|
|
|
|
if(StringUtils.isNotBlank(fentryNo)){
|
|
|
|
|
flag = 2;
|
|
|
|
|
}
|
|
|
|
|
if(StringUtils.isNotBlank(frecName) && StringUtils.isNotBlank(fentryNo)){
|
|
|
|
|
flag = 3;
|
|
|
|
|
}
|
|
|
|
|
if(flag != 0){
|
|
|
|
|
List<HisCollectInfo> tempList = new LinkedList<>();
|
|
|
|
|
for(HisCollectInfo info : list){
|
|
|
|
|
if(flag == 1){
|
|
|
|
|
if(info.getFrecName().contains(frecName)){
|
|
|
|
|
tempList.add(info);
|
|
|
|
|
}
|
|
|
|
|
}else if(flag == 2){
|
|
|
|
|
if(info.getFentryNo().contains(fentryNo)){
|
|
|
|
|
tempList.add(info);
|
|
|
|
|
}
|
|
|
|
|
}else {
|
|
|
|
|
if(info.getFrecName().contains(frecName) && info.getFentryNo().contains(fentryNo)){
|
|
|
|
|
tempList.add(info);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return tempList;
|
|
|
|
|
}else{
|
|
|
|
|
return list;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//赋值两时间:最近上传时间与最新手动提交时间
|
|
|
|
|
private void setTwoTimeForList(List<HisCollectInfo> list) {
|
|
|
|
@ -314,20 +358,10 @@ public class beHospitaledController {
|
|
|
|
|
//组织sql语句查询orcle查询文件完成情况
|
|
|
|
|
private String getSelectSqlForGetPdfCollect(HisCollectInfo collectInfo){
|
|
|
|
|
String sql = "select FPATNO,FENTRY_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)){
|
|
|
|
|
sql += " and FREC_NAME like '%"+frecName+"%'";
|
|
|
|
|
}
|
|
|
|
|
//分类编码
|
|
|
|
|
String fentryNo = collectInfo.getFentryNo();
|
|
|
|
|
if(StringUtils.isNotBlank(fentryNo)){
|
|
|
|
|
sql += " and FENTRY_NO = '"+fentryNo+"'";
|
|
|
|
|
}
|
|
|
|
|
//状态
|
|
|
|
|
String pdfflag = collectInfo.getPdfflag();
|
|
|
|
|
if(StringUtils.isNotBlank(pdfflag)){
|
|
|
|
|
sql += " and PDF_FLAG = '"+pdfflag+"'";
|
|
|
|
|
sql += " and pdf_flag = '"+pdfflag+"'";
|
|
|
|
|
}
|
|
|
|
|
return sql;
|
|
|
|
|
}
|
|
|
|
|