Ver código fonte

代码迁移合并

demon 9 anos atrás
pai
commit
70ad0e2a95

+ 49 - 4
Hos-resource/src/main/java/com/yihu/ehr/crawler/controller/CrawlerController.java

@ -3,15 +3,14 @@ package com.yihu.ehr.crawler.controller;
import com.yihu.ehr.crawler.model.patient.Patient;
import com.yihu.ehr.crawler.service.CrawlerManager;
import com.yihu.ehr.crawler.service.CrawlerService;
import com.yihu.ehr.framework.model.ActionResult;
import com.yihu.ehr.framework.model.DetailModelResult;
import com.yihu.ehr.framework.model.Result;
import com.yihu.ehr.framework.util.operator.StringUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
@ -64,4 +63,50 @@ public class CrawlerController {
        }
        return Result.success("保存成功");
    }
    /**
     * 获取适配方案 数据集关系
     *
     * @param versionId 适配方案版本ID
     * @return
     */
    @RequestMapping("getSchemeDataSets")
    @ResponseBody
    public DetailModelResult getSchemeDataSets(
            @RequestParam(value = "versionId", required = true) Integer versionId,
            @RequestParam(value = "name", required = false) String name
    ) {
        try {
            return crawlerService.getSchemeDataset(versionId);
        } catch (Exception e) {
            e.printStackTrace();
            return new DetailModelResult();
        }
    }
    /**
     * 保存适配方案 数据映射关系
     *
     * @param version
     * @param data     映射关系
     * @return
     */
    @RequestMapping("saveSchemeRelation")
    @ResponseBody
    public ActionResult addSchemeRelation(
            @RequestParam(value = "version", required = true) String version,
            @RequestParam(value = "data", required = true) String data
    ) {
        try {
            return crawlerService.saveDataSetRelation( version, data);
        } catch (Exception ex) {
            ex.printStackTrace();
            return new ActionResult();
        }
    }
}

+ 2 - 2
Hos-resource/src/main/java/com/yihu/ehr/crawler/dao/CrawlerDatasetDao.java

@ -15,12 +15,12 @@ public class CrawlerDatasetDao extends SQLGeneralDAO {
    public static final String BEAN_ID = "CrawlerDatasetDao";
    public List<CrawlerDataSetModel> getCrawlerDatasetList(Integer versionId) throws Exception {
        String sql = "select * from crawler_dataset where scheme_version_id='"+versionId+"'";
        String sql = "select * from crawler_dataset where scheme_version_id='" + versionId + "'";
        return super.queryListBySql(sql, CrawlerDataSetModel.class);
    }
    public void deleteCrawlerDatasetList(Integer versionId) throws Exception {
        String sql = "delete from crawler_dataset where scheme_version_id='"+versionId+"'";
        String sql = "delete from crawler_dataset where scheme_version_id='" + versionId + "'";
        super.execute(sql);
    }
}

+ 15 - 0
Hos-resource/src/main/java/com/yihu/ehr/crawler/dao/CrawlerFlowDao.java

@ -1,13 +1,28 @@
package com.yihu.ehr.crawler.dao;
import com.yihu.ehr.crawler.model.flow.CrawlerDataSetModel;
import com.yihu.ehr.crawler.model.flow.CrawlerFlowHeadModel;
import com.yihu.ehr.crawler.model.flow.CrawlerFlowModel;
import com.yihu.ehr.framework.common.dao.SQLGeneralDAO;
import com.yihu.ehr.standard.model.adapter.AdapterSchemeVersionModel;
import org.hibernate.Query;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
 * Created by HZY on 2016/4/27.
 */
@Repository("CrawlerFlowDao")
public class CrawlerFlowDao extends SQLGeneralDAO {
    public static final String BEAN_ID = "CrawlerFlowDao";
    public List<CrawlerFlowModel> getCrawlerFlowList(Integer versionId) {
        String adapterVersionHql = "FROM CrawlerFlowModel where schemeVersionId= :schemeVersionId";
        Query query = getCurrentSession().createQuery(adapterVersionHql);
        query.setParameter("schemeVersionId", versionId);
        List<CrawlerFlowModel> modelList = query.list();
        return modelList;
    }
}

+ 16 - 1
Hos-resource/src/main/java/com/yihu/ehr/crawler/dao/CrawlerFlowHeadDao.java

@ -1,16 +1,31 @@
package com.yihu.ehr.crawler.dao;
import com.yihu.ehr.crawler.model.flow.CrawlerFlowHeadModel;
import com.yihu.ehr.crawler.model.flow.CrawlerFlowModel;
import com.yihu.ehr.framework.common.dao.SQLGeneralDAO;
import org.hibernate.Query;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
 * Created by HZY on 2016/4/27.
 */
@Repository("CrawlerFlowHeadDao")
public class CrawlerFlowHeadDao extends SQLGeneralDAO {
    public static final String BEAN_ID = "CrawlerFlowHeadDao";
    public void deleteCrawlerFlowHeadList(Integer versionId) throws Exception {
        String sql = "delete from crawler_flow_head where scheme_version_id='"+versionId+"'";
        String sql = "delete from crawler_flow_head where scheme_version_id='" + versionId + "'";
        super.execute(sql);
    }
    public List<CrawlerFlowHeadModel> getCrawlerFlowHeadList(Integer versionId) {
        String sql = "FROM CrawlerFlowHeadModel where schemeVersionId= :schemeVersionId";
        Query query = getCurrentSession().createQuery(sql);
        query.setParameter("schemeVersionId", versionId);
        List<CrawlerFlowHeadModel> modelList = query.list();
        return modelList;
    }
}

+ 41 - 0
Hos-resource/src/main/java/com/yihu/ehr/crawler/model/flow/resultModel/FlowMapping.java

@ -0,0 +1,41 @@
package com.yihu.ehr.crawler.model.flow.resultModel;
import java.io.Serializable;
import java.util.LinkedList;
import java.util.List;
/**
 * 适配方案映射数据类
 * @author HZY
 * @vsrsion 1.0
 * Created at 2016/4/28.
 */
public class FlowMapping implements Serializable {
    private List<FlowEntrance> entrances;
    private List<FlowLines> lines;
    private Integer schemeVersionId;
    public List<FlowEntrance> getEntrances() {
        return entrances;
    }
    public void setEntrances(List<FlowEntrance> entrances) {
        this.entrances = entrances;
    }
    public List<FlowLines> getLines() {
        return lines;
    }
    public void setLines(List<FlowLines> lines) {
        this.lines = lines;
    }
    public Integer getSchemeVersionId() {
        return schemeVersionId;
    }
    public void setSchemeVersionId(Integer schemeVersionId) {
        this.schemeVersionId = schemeVersionId;
    }
}

+ 64 - 16
Hos-resource/src/main/java/com/yihu/ehr/crawler/service/CrawlerService.java

@ -7,6 +7,9 @@ import com.yihu.ehr.crawler.model.flow.CrawlerDataSetModel;
import com.yihu.ehr.crawler.model.flow.CrawlerFlowHeadModel;
import com.yihu.ehr.crawler.model.flow.CrawlerFlowModel;
import com.yihu.ehr.crawler.model.flow.resultModel.CrawlerDatasetResultDetailModel;
import com.yihu.ehr.crawler.model.flow.resultModel.FlowEntrance;
import com.yihu.ehr.crawler.model.flow.resultModel.FlowLines;
import com.yihu.ehr.crawler.model.flow.resultModel.FlowMapping;
import com.yihu.ehr.framework.model.ActionResult;
import com.yihu.ehr.framework.model.DetailModelResult;
import com.yihu.ehr.standard.model.adapter.AdapterDatasetModel;
@ -42,8 +45,8 @@ public class CrawlerService {
    /**
     * 保存编排映射关系
     *
     * @param version  适配方案版本
     * @param json     映射数据
     * @param version 适配方案版本
     * @param json    映射数据
     * @return
     * @throws Exception
     */
@ -52,7 +55,7 @@ public class CrawlerService {
        JSONArray jsonList = root.getJSONArray("lines");
        JSONArray entrances = root.getJSONArray("entrances");
        AdapterSchemeVersionModel versionModel = adapterSchemeVersionService.getByVersion(version);
        if (jsonList!=null && jsonList.size()>0) {
        if (jsonList != null && jsonList.size() > 0) {
            // 删除旧关联关系
            crawlerDatasetDao.deleteCrawlerDatasetList(versionModel.getId());
            for (Object item : jsonList) {
@ -104,31 +107,32 @@ public class CrawlerService {
        List<CrawlerDataSetModel> crawlerDataset = crawlerDatasetDao.getCrawlerDatasetList(versionModel.getId());
        DetailModelResult re = new DetailModelResult();
        List<CrawlerDatasetResultDetailModel> list = new ArrayList<>();
        for (AdapterDatasetModel adapterDatasetModel : adapterDatasetModelList) {
            Integer datasetId = adapterDatasetModel.getAdapterDatasetId();
            //是否关联任务
        for (AdapterDatasetModel datasetModel : adapterDatasetModelList) {
            CrawlerDatasetResultDetailModel obj = new CrawlerDatasetResultDetailModel();
            obj.setSchemeVersionId(schemeVersionId);
            obj.setDatasetId(datasetModel.getStdDatasetId());
            obj.setDatasetCode(datasetModel.getStdDatasetCode());
            obj.setDatasetName(datasetModel.getStdDatasetName());
            obj.setSchemeId(datasetModel.getSchemeId());
            if (crawlerDataset != null && crawlerDataset.size() > 0) {
                CrawlerDatasetResultDetailModel obj = new CrawlerDatasetResultDetailModel();
                for (CrawlerDataSetModel cDataSet : crawlerDataset) {
                    if (cDataSet.getDatasetId() == datasetId) {
                    if (cDataSet.getDatasetId().equals(datasetModel.getAdapterDatasetId())) {
                        obj.setSchemeVersionId(cDataSet.getSchemeVersionId());
                        obj.setDatasetId(cDataSet.getDatasetId());
                        obj.setDatasetCode(cDataSet.getDatasetCode());
                        obj.setDatasetName(cDataSet.getDatasetName());
                        obj.setSchemeId(cDataSet.getSchemeId());
                        obj.setChecked("1");
                        break;
                    }
                }
                list.add(obj);
            }
            list.add(obj);
        }
        re.setDetailModelList(list);
        return re;
    }
    /**
     * 保存任务编排数据
     *
     * @param json
     * @return
     * @throws Exception
@ -137,8 +141,7 @@ public class CrawlerService {
        JSONArray jsonList = JSONArray.fromObject(json);
        for(Object item : jsonList)
        {
        for (Object item : jsonList) {
            JSONObject obj = JSONObject.fromObject(item);
            String schemeId = obj.getString("schemeId");
            String version = obj.getString("version");
@ -146,7 +149,7 @@ public class CrawlerService {
            JSONArray dataSets = obj.getJSONArray("dataSets");
            //保存数据集
            for (Object o : dataSets) {
                JSONObject dataSet =  JSONObject.fromObject(o);
                JSONObject dataSet = JSONObject.fromObject(o);
                String datasetId = dataSet.getString("datasetId");
                String datasetCode = dataSet.getString("datasetCode");
                String datasetName = dataSet.getString("datasetName");
@ -165,4 +168,49 @@ public class CrawlerService {
            }
        }
    }
    /**
     * 获取适配方案映射数据
     *
     * @param schemeVersionId
     * @return
     */
    public FlowMapping getFlowMappingDataset(Integer schemeVersionId) {
        FlowMapping flowMapping = new FlowMapping();
        List<FlowEntrance> entrances = getFlowEntrances(schemeVersionId);
        List<FlowLines> lines = getFlowLines(schemeVersionId);
        flowMapping.setSchemeVersionId(schemeVersionId);
        flowMapping.setEntrances(entrances);
        flowMapping.setLines(lines);
        return flowMapping;
    }
    public List<FlowEntrance> getFlowEntrances(Integer schemeVersionId) {
        List<FlowEntrance> entrances = new ArrayList<>();
        List<CrawlerFlowHeadModel> modelList = crawlerFlowHeadDao.getCrawlerFlowHeadList(schemeVersionId);
        for (CrawlerFlowHeadModel headModel : modelList) {
            FlowEntrance entrance = new FlowEntrance();
            entrance.setDataSet(headModel.getDatasetCode());
            entrance.setMeta(headModel.getMetadataCode());
            entrances.add(entrance);
        }
        return entrances;
    }
    public List<FlowLines> getFlowLines(Integer schemeVersionId) {
        List<FlowLines> lines = new ArrayList<>();
        List<CrawlerFlowModel> modelList = crawlerFlowDao.getCrawlerFlowList(schemeVersionId);
        for (CrawlerFlowModel model : modelList) {
            FlowLines line = new FlowLines();
            line.setFrom(model.getInputDatasetCode());
            line.setFromPort(model.getInputMetadataCode());
            line.setTo(model.getDatasetCode());
            line.setToPort(model.getMetadataCode());
            lines.add(line);
        }
        return lines;
    }
}

+ 1 - 1
Hos-resource/src/main/java/com/yihu/ehr/standard/service/adapter/AdapterSchemeService.java

@ -284,7 +284,7 @@ public class AdapterSchemeService extends SQLGeneralDAO {
        Query query = getCurrentSession().createQuery(schemeHql);
        List<AdapterSchemeModel> adapterSchemeModelList = query.list();
        List<AdapterSchemeResultModel> schemeList = new ArrayList<>();
        DetailModelResult result=new DetailModelResult();
        DetailModelResult result = new DetailModelResult();
        for (AdapterSchemeModel schemeModel : adapterSchemeModelList) {
            String adapterVersionHql = "FROM AdapterSchemeVersionModel WHERE schemeId = :schemeId and publishStatus = 1";
            query = getCurrentSession().createQuery(adapterVersionHql);