ソースを参照

Merge branch 'master' of http://192.168.1.220:10080/esb/esb

yingjie 9 年 前
コミット
1ba536be4a

+ 13 - 2
Hos-resource/src/main/java/com/yihu/ehr/crawler/service/CrawlerFlowManager.java

@ -100,6 +100,15 @@ public class CrawlerFlowManager {
                return message;
            }
            /**
             * 获取远程版本
             */
            if (!dispatch.getRemoteVersion(patient.getOrgCode())) {
                message = "远程版本获取失败";
                logger.error(message);
                return message;
            }
            Map<String, JsonNode> dataMap = new HashMap<>();
            for (CrawlerFlowHeadModel crawlerFlowHeadModel : crawlerFlowHeadModelList) {
                /**
@ -253,11 +262,13 @@ public class CrawlerFlowManager {
                    metadataList.add(crawlerFlowModel);
                    crawlerFlowMetadataMap.put(datasetCode, metadataList);
                }
                SysConfig.getInstance().setVersionMap(new HashMap<>());
                adapterFlg = true;
            } catch (Exception e) {
                return false;
                adapterFlg = false;
            }
        }
        return true;
        return adapterFlg;
    }
    /**

+ 2 - 28
Hos-resource/src/main/java/com/yihu/ehr/crawler/service/DataCollectDispatcher.java

@ -216,39 +216,13 @@ public class DataCollectDispatcher {
        return fecthData(patient, adapterDataSet, queryParams);
    }
    public String fecthData(Patient patient, AdapterDataSet adapterDataSet) {
        List<EhrCondition> queryParams = new ArrayList<>();
        boolean patientId = true;
        if (adapterDataSet.isHavePatientID()) {
            AdapterMetaData adapterMetaData = adapterDataSet.getAdapterMetaDataMap().get(PatientIdentity.getPatientIDCode());
            queryParams.add(new EhrCondition(" = ", adapterMetaData.getAdapterMetadataModel().getStdMetadataCode(), patient.getPatientId()));
        } else {
            patientId = false;
        }
        boolean eventNo = true;
        if (adapterDataSet.isHaveEventNo()) {
            AdapterMetaData adapterMetaData = adapterDataSet.getAdapterMetaDataMap().get(adapterDataSet.getEventNoCode());
            queryParams.add(new EhrCondition(" = ", adapterMetaData.getAdapterMetadataModel().getStdMetadataCode(), patient.getEventNo()));
        } else {
            eventNo = false;
        }
        if (!patientId && !eventNo) {
            logger.error("采集病人数据集至少需要一项病人标识.数据集名:" + adapterDataSet.getAdapterDataSetT().getStdDatasetCode());
            return Constants.EMPTY;
        }
        return fecthData(patient, adapterDataSet, queryParams);
    }
    /**
     * 根据编排任务进行采集
     * @param patient
     * @param adapterDataSet
     * @return
     */
    public String fecthData1(Patient patient, AdapterDataSet adapterDataSet) {
    public String fecthData(Patient patient, AdapterDataSet adapterDataSet) {
        try {
            ObjectMapper mapper = new ObjectMapper();
            List<EhrCondition> queryParams = new ArrayList<>();
@ -295,7 +269,7 @@ public class DataCollectDispatcher {
                jsonObject.put("event_no", patient.getEventNo());
                String agencyCode = patient.getOrgCode();
                jsonObject.put("org_code", agencyCode);
                jsonObject.put("inner_version", "123456");
                jsonObject.put("inner_version", SysConfig.getInstance().getVersionMap().get(patient.getOrgCode()));
                jsonObject.put("create_date", DateUtil.toString(new Date(), DateUtil.DEFAULT_YMDHMSDATE_FORMAT));
                jsonObject.put("event_time", patient.getReferenceTime());//DateUtil.toString(patient.getReferenceTime(), DateUtil.DEFAULT_YMDHMSDATE_FORMAT)
                if (StringUtil.isEmpty(patient.getReUploadFlg())) {

+ 16 - 12
Hos-resource/src/main/java/com/yihu/ehr/datacollect/service/DatacollectService.java

@ -338,34 +338,37 @@ public class DatacollectService implements IDatacollectService {
                //增量采集
                String maxKey = "0";
                String keyValue = ds.getJobDatasetKeyvalue();
                if(key!=null && key.length()>0 &&(keyValue!=null&&!keyValue.equals("null")))
                if(key!=null && key.length()>0)
                {
                    maxKey = key;
                    if(keytype.toUpperCase().equals("DATE")) //时间类型
                    {
                        Date keyDate = new Date();
                        if(keyvalue!=null && keyvalue.length()>0) {
                            //字符串转时间
                            keyDate = DateConvert.toDate(keyvalue);
                            //根据数据库类型获取时间sql
                            strWhere += " and "+ key + ">'"+getDateSqlByDBType(dbType,keyDate)+"'";
                            strWhere += " order by "+ key;
                        }
                        //根据数据库类型获取时间sql
                        strWhere += " and "+ key + ">'"+getDateSqlByDBType(dbType,keyDate)+"'";
                        strWhere += " order by "+ key;
                    }
                    else if(keytype.toUpperCase().equals("VARCHAR")) //字符串类型
                    {
                        maxKey = getToNumberSqlByDBType(dbType,key);
                        if(keyvalue!=null && keyvalue.length()>0) {
                            strWhere += " and "+ maxKey + ">'" + keyvalue + "'";
                            strWhere += " order by "+ maxKey;
                        }
                        strWhere += " order by "+ maxKey;
                    }
                    else{
                        if(keyvalue!=null && keyvalue.length()>0) {
                            strWhere += " and "+ key + ">'" + keyvalue + "'";
                            strWhere += " order by "+ key;
                        }
                        strWhere += " order by "+ key;
                    }
                }
                strSql += strWhere;
                //总条数和最大值查询
@ -560,7 +563,7 @@ public class DatacollectService implements IDatacollectService {
                    //增量采集
                    String maxKey = "0";
                    String keyValue = ds.getJobDatasetKeyvalue();
                    if (key != null && key.length() > 0 && (keyValue != null && !keyValue.equals("null"))) {
                    if (key != null && key.length() > 0) {
                        maxKey = key;
                        if (keytype.toUpperCase().equals("DATE")) //时间类型
                        {
@ -568,22 +571,23 @@ public class DatacollectService implements IDatacollectService {
                            if (keyvalue != null && keyvalue.length() > 0) {
                                //字符串转时间
                                keyDate = DateConvert.toDate(keyvalue);
                                //根据数据库类型获取时间sql
                                strWhere += " and " + key + ">'" + getDateSqlByDBType(dbType, keyDate) + "'";
                                strWhere += " order by " + key;
                            }
                            //根据数据库类型获取时间sql
                            strWhere += " and " + key + ">'" + getDateSqlByDBType(dbType, keyDate) + "'";
                            strWhere += " order by " + key;
                        } else if (keytype.toUpperCase().equals("VARCHAR")) //字符串类型
                        {
                            maxKey = getToNumberSqlByDBType(dbType, key);
                            if (keyvalue != null && keyvalue.length() > 0) {
                                strWhere += " and " + maxKey + ">'" + keyvalue + "'";
                                strWhere += " order by " + maxKey;
                            }
                            strWhere += " order by " + maxKey;
                        } else {
                            if (keyvalue != null && keyvalue.length() > 0) {
                                strWhere += " and " + key + ">'" + keyvalue + "'";
                                strWhere += " order by " + key;
                            }
                            strWhere += " order by " + key;
                        }
                    }
                    strSql += strWhere;

+ 1 - 1
Hos-resource/src/main/webapp/WEB-INF/ehr/jsp/common/index.jsp

@ -33,7 +33,7 @@
    <div position="top">
        <div class="m-index-top">
            <div style="float: right;padding-right: 8px">
                <div class="m-index-top-name">欢迎您,${userName}</div>
                <div class="m-index-top-name">欢迎您! ${userName}</div>
                <div style="height:40px;">
                    <div id="btnIndexLogout"></div>
                    <div id="btnIndexPassword"></div>

+ 16 - 4
Hos-resource/src/main/webapp/WEB-INF/ehr/jsp/datacollect/editorJobJs.jsp

@ -617,13 +617,25 @@
                            $.ligerDialog.error("请选择数据集!");
                            return false;
                        }
                    }
                    //判断是否设置轮询字段和字段类型
                    var selected = me.$listDataset.getSelectedRows();
                    for(var i=0;i<selected.length;i++)
                    {
                        if(selected[i].jobDatasetKey!= undefined && selected[i].jobDatasetKey.length>0 && selected[i].jobDatasetKeytype!= undefined && selected[i].jobDatasetKeytype.length>0)
                        {
                        }
                        else{
                            return true;
                            $.ligerDialog.error(selected[i].jobDatasetName+"未设置轮询字段!");
                            return false;
                        }
                    }
                    else{
                        return true;
                    }
                    return true;
                }
                default :
                    return true;