Bläddra i källkod

应用标准,数据源未适配代码打开

huangzhiyong 8 år sedan
förälder
incheckning
62ac261278

+ 23 - 22
hos-rest/src/main/java/com/yihu/hos/rest/services/crawler/CrawlerManager.java

@ -52,7 +52,7 @@ public class CrawlerManager {
    private AdapterSchemeService adapterSchemeService;
    private static DataCollectDispatcher dispatch = DataCollectDispatcher.getInstance();
    private static SysConfig sysConfig=SysConfig.getInstance();
    private static SysConfig sysConfig = SysConfig.getInstance();
    private static Map<String, Map<String, AdapterDataSet>> adapterDataSetVersionMap = new HashMap<>();
    private static Map<String, Map<String, StdDataSet>> stdDataSetVersionMap = new HashMap<>();
@ -74,7 +74,7 @@ public class CrawlerManager {
        RsJobConfig rsJobConfig = datacollect.getJobById(jobId);
        String random = UUID.randomUUID().toString();
        logger.info("档案采集上传开始,流水号:" + random + ",jobId:"+jobId);
        logger.info("档案采集上传开始,流水号:" + random + ",jobId:" + jobId);
        Date begin = rsJobConfig.getRepeatStartTime();
        Date end = rsJobConfig.getRepeatEndTime();
@ -82,12 +82,12 @@ public class CrawlerManager {
            int totalOffset = rsJobConfig.getDelayTime();
            Calendar instance = Calendar.getInstance();
            instance.setTime(new Date(DateUtil.getSysDateTime().getTime()));
            instance.add(Calendar.SECOND, - totalOffset);    //调整截止时间,当前时间-偏移量
            instance.add(Calendar.SECOND, -totalOffset);    //调整截止时间,当前时间-偏移量
            end = instance.getTime();
        }
        if ((end.getTime() - begin.getTime()) <= 0) {
            return Result.error("错误:采集结束时间小于开始时间!"); //结束时间小于开始时间时,不获取
            return Result.error("错误:采集上传结束时间小于开始时间!"); //结束时间小于开始时间时,不获取
        }
        end = DateUtil.fromatDateToTimestamp(end);
@ -96,7 +96,7 @@ public class CrawlerManager {
            //调整截止时间,当前时间-偏移量
            end = DateUtil.addDate(-rsJobConfig.getDelayTime(), DateUtil.getSysDateTime());
            if ((end.getTime() - begin.getTime()) <= 0) {
                return Result.success("错误:采集结束时间小于开始时间!"); //结束时间小于开始时间时,不获取
                return Result.success("错误:采集上传结束时间小于开始时间!"); //结束时间小于开始时间时,不获取
            }
        }
@ -108,13 +108,14 @@ public class CrawlerManager {
        DataGridResult dataGridResult = datacollect.getJobDatasetByJobId(jobId);
        this.datasetList = dataGridResult.getDetailModelList();
        this.schemeVersion = rsJobConfig.getSchemeVersion();
        Result result = dataCrawler(begin, end);
        if (!rsJobConfig.getJobType().equals("0")) {
            rsJobConfig.setRepeatStartTime(end);
//            rsJobConfig.setRepeatEndTime(DateUtil.formatYMDToYMDHMS(DateUtil.getSysDateTime().toString()));
        }
        datacollect.updateJob(rsJobConfig);
        logger.info("档案采集上传结束,流水号:" + random + ",jobId:" + jobId + ",message:" + result.getMessage());
        Result result = dataCrawler(begin, end);
        logger.info("档案采集上传结束,上传结果:" + result.isSuccessFlg() + "流水号:" + random + ",jobId:" + jobId + ",message:" + result.getMessage());
        return result;
    }
@ -144,7 +145,7 @@ public class CrawlerManager {
                }
            }
        }
        message = "本次采集病人共" + totalCount + "条,成功采集信息"+ count + "条";
        message = "本次采集上传病人共" + totalCount + "条,成功采集上传信息" + count + "条";
        return Result.success(message);
    }
@ -181,7 +182,7 @@ public class CrawlerManager {
                }
            }
            if(StringUtil.isEmpty(sysConfig.getVersionMap().get(patient.getOrgCode()))){
            if (StringUtil.isEmpty(sysConfig.getVersionMap().get(patient.getOrgCode()))) {
                logger.error("版本获取失败");
                return false;
            }
@ -211,12 +212,12 @@ public class CrawlerManager {
                    }
                }
            }
            logger.info("采集病人成功,patient_id:" + patient.getPatientId() + ", event_no:" + patient.getEventNo());
            logger.info("上传-采集病人信息成功,patient_id:" + patient.getPatientId() + ", event_no:" + patient.getEventNo());
            //上传档案
            logger.info("上传病人档案");
            try {
                if (!CollectionUtil.isEmpty(dataMap.keySet())) {
                    if (!dispatch.upload(dataMap, patient, dataSetMap,stdDataSetMap)) {
                    if (!dispatch.upload(dataMap, patient, dataSetMap, stdDataSetMap)) {
                        logger.error("上传档案失败");
                        return false;
                    }
@ -255,7 +256,7 @@ public class CrawlerManager {
//                return false;
//            }
            if(StringUtil.isEmpty(sysConfig.getVersionMap().get(patient.getOrgCode()))){
            if (StringUtil.isEmpty(sysConfig.getVersionMap().get(patient.getOrgCode()))) {
                logger.error("版本获取失败");
                return false;
            }
@ -263,9 +264,9 @@ public class CrawlerManager {
            Map<String, AdapterDataSet> dataSetMap = new HashMap<>();
            Map<String, JsonNode> dataMap = new HashMap<>();
            if (adapterDataSetMap.containsKey(unstructured)){
            if (adapterDataSetMap.containsKey(unstructured)) {
                //TODO 非结构化档处理
            }else {
            } else {
                //TODO 结构化档案处理
            }
            for (String key : adapterDataSetMap.keySet()) {
@ -291,12 +292,12 @@ public class CrawlerManager {
                    }
                }
            }
            logger.info("采集病人成功,patient_id:" + patient.getPatientId() + ", event_no:" + patient.getEventNo());
            logger.info("上传-采集病人信息成功,patient_id:" + patient.getPatientId() + ", event_no:" + patient.getEventNo());
            //上传档案
            logger.info("上传病人档案");
            try {
                if (!CollectionUtil.isEmpty(dataMap.keySet())) {
                    if (!dispatch.upload(dataMap, patient, dataSetMap,stdDataSetMap)) {
                    if (!dispatch.upload(dataMap, patient, dataSetMap, stdDataSetMap)) {
                        logger.error("上传档案失败");
                        return false;
                    }
@ -339,13 +340,13 @@ public class CrawlerManager {
                    datasetIdList.add(dataSetId);
                }
                adapterDataSetModelList = adapterDatasetService.getAdapterDatasetByAdapterIdList(adapterVersion, datasetIdList);
                if (adapterDataSetModelList!=null && !adapterDataSetModelList.isEmpty()){
                if (adapterDataSetModelList != null && !adapterDataSetModelList.isEmpty()) {
                    AdapterSchemeModel adapterScheme = adapterSchemeService.getEntity(AdapterSchemeModel.class, adapterDataSetModelList.get(0).getSchemeId());
                    standardVersion = new StandardVersion(adapterScheme.getStdVersion());
                    for (DictItem dictItem : datasetList) {
                        Integer dataSetId = Integer.parseInt(dictItem.getCode());
                        if (!stdMetaDataMap.containsKey(dataSetId)){
                            stdMetaDataMap.put(dataSetId,new StdDataSet(dataSetId, standardVersion).getStdMetaDataModelList());
                        if (!stdMetaDataMap.containsKey(dataSetId)) {
                            stdMetaDataMap.put(dataSetId, new StdDataSet(dataSetId, standardVersion).getStdMetaDataModelList());
                        }
                    }
                }
@ -372,7 +373,7 @@ public class CrawlerManager {
                    stdFlg = true;
                }
                if (adapterFlg && stdFlg){
                if (adapterFlg && stdFlg) {
                    return true;
                }
@ -401,10 +402,10 @@ public class CrawlerManager {
             */
            for (AdapterDatasetModel adapterDatasetModel : adapterDataSetModelList) {
                adapterDataSetMap.put(adapterDatasetModel.getStdDatasetCode(), new AdapterDataSet(adapterDatasetModel, adapterVersion, adapterDictEntryModelMap));
                stdDataSetMap.put(adapterDatasetModel.getStdDatasetCode(), new StdDataSet(adapterDatasetModel.getStdDatasetId(),standardVersion));
                stdDataSetMap.put(adapterDatasetModel.getStdDatasetCode(), new StdDataSet(adapterDatasetModel.getStdDatasetId(), standardVersion));
            }
            adapterDataSetVersionMap.put(schemeVersion, adapterDataSetMap);
            stdDataSetVersionMap.put(schemeVersion,stdDataSetMap);
            stdDataSetVersionMap.put(schemeVersion, stdDataSetMap);
            adapterFlg = true;
            stdFlg = true;
            return true;

+ 25 - 25
src/main/java/com/yihu/hos/datacollect/service/DatacollectManager.java

@ -351,31 +351,31 @@ public class DatacollectManager{
    @Transactional
    public ActionResult saveDatasetSource(String json) throws Exception {
        //TODO: Use jackson
//        JSONArray jsonList = JSONArray.fromObject(json);
//
//
//        for (Object item : jsonList) {
//            JSONObject obj = JSONObject.fromObject(item);
//            if (obj.containsKey("id") && obj.getString("id").length() > 0) {
//                String id = obj.getString("id");
//                //修改
//                RsDatasourceDataset dd = (RsDatasourceDataset) JSONObject.toBean(obj, RsDatasourceDataset.class);
//                datacollectDao.updateEntity(dd);
////                if(obj.containsKey("datasourceId") && obj.getString("datasourceId").length()>0)
////                {
////                    RsDatasourceDataset dd = (RsDatasourceDataset)JSONObject.toBean(obj,RsDatasourceDataset.class);
////                    datacollectDao.updateEntity(dd);
////                }
////                //删除
////                else{
////                    datacollectDao.deleteEntity(RsDatasourceDataset.class,id);
////                }
//            } else {
//                //新增
//                RsDatasourceDataset dd = (RsDatasourceDataset) JSONObject.toBean(obj, RsDatasourceDataset.class);
//                datacollectDao.saveEntity(dd);
//            }
//        }
        JSONArray jsonList = JSONArray.fromObject(json);
        for (Object item : jsonList) {
            JSONObject obj = JSONObject.fromObject(item);
            if (obj.containsKey("id") && obj.getString("id").length() > 0) {
                String id = obj.getString("id");
                //修改
                RsDatasourceDataset dd = (RsDatasourceDataset) JSONObject.toBean(obj, RsDatasourceDataset.class);
                datacollectDao.updateEntity(dd);
//                if(obj.containsKey("datasourceId") && obj.getString("datasourceId").length()>0)
//                {
//                    RsDatasourceDataset dd = (RsDatasourceDataset)JSONObject.toBean(obj,RsDatasourceDataset.class);
//                    datacollectDao.updateEntity(dd);
//                }
//                //删除
//                else{
//                    datacollectDao.deleteEntity(RsDatasourceDataset.class,id);
//                }
            } else {
                //新增
                RsDatasourceDataset dd = (RsDatasourceDataset) JSONObject.toBean(obj, RsDatasourceDataset.class);
                datacollectDao.saveEntity(dd);
            }
        }
        return new ActionResult(true, "保存成功!");

+ 0 - 48
src/main/webapp/WEB-INF/ehr/jsp/system/flow/editorFlow.jsp

@ -23,22 +23,7 @@
                </div>
            </div>
        </div>
        <%--<div class="m-form-group">--%>
        <%--<label><span class="red">*&nbsp;</span>流程:</label>--%>
        <%--<div class="m-form-control">--%>
        <%--<form id="form1" action="${contextRoot}/flow/upload" method="post" enctype="multipart/form-data">--%>
        <%--<input type="text" name="path" class="l-textbox btnGrayUp" style="width: 144px;"  placeholder="点击选择流程文件" readonly="readonly" data-id="">--%>
        <%--<div style="float: right;">--%>
        <%--<div  class="l-button l-button-no btnGrayDo" data-id="1">--%>
        <%--<span style="background-color: rgb(240, 240, 240);">导入</span>--%>
        <%--</div>--%>
        <%--<label class="say1" style="display: inline-block;width: 70px;"></label>--%>
        <%--</div>--%>
        <%--<input type="file" name="file" style="display: none" id="file1" />--%>
        <%--</form>--%>
        <%--</div>--%>
        <%--</div>--%>
        <div class="m-form-group">
            <label><span class="red">*&nbsp;</span>流程图:</label>
            <div class="m-form-control">
@ -54,40 +39,7 @@
                </form>
            </div>
        </div>
        <%--<div class="m-form-group">--%>
        <%--<label><span class="red">*&nbsp;</span>源代码:</label>--%>
        <%--<div class="m-form-control">--%>
        <%--<form id="form3" action="${contextRoot}/flow/upload" method="post" enctype="multipart/form-data">--%>
        <%--<input type="text" name="classPath" class="l-textbox btnGrayUp" style="width: 144px;"  placeholder="点击选择源代码文件" readonly="readonly" data-id="">--%>
        <%--<div style="float: right;">--%>
        <%--<div  class="l-button l-button-no btnGrayDo" data-id="3">--%>
        <%--<span style="background-color: rgb(240, 240, 240);">导入</span>--%>
        <%--</div>--%>
        <%--<label class="say3" style="display: inline-block;width: 70px;"></label>--%>
        <%--</div>--%>
        <%--<input type="file" name="file" style="display: none" id="file3" />--%>
        <%--</form>--%>
        <%--</div>--%>
        <%--</div>--%>
        <%--<div class="m-form-group">--%>
        <%--<label><span class="red">*&nbsp;</span>包名:</label>--%>
        <%--<div class="m-form-control">--%>
        <%--<div class="l-text">--%>
        <%--<input type="text" class="l-text-field" placeholder="请输入包名" name="packageName"/>--%>
        <%--</div>--%>
        <%--</div>--%>
        <%--</div>--%>
        <%--<div class="m-form-group">--%>
        <%--<label><span class="red">*&nbsp;</span>类名:</label>--%>
        <%--<div class="m-form-control">--%>
        <%--<div class="l-text">--%>
        <%--<input type="text" class="l-text-field required" placeholder="请输入类名" name="className"/>--%>
        <%--</div>--%>
        <%--</div>--%>
        <%--</div>--%>
        <div class="m-form-group">
            <label>状态:</label>
            <div class="m-form-control ">