소스 검색

流程编排 数据集关系表添加

demon 9 년 전
부모
커밋
67894181e1

+ 20 - 0
Hos-resource/src/main/java/com/yihu/ehr/crawler/dao/CrawlerDao.java

@ -0,0 +1,20 @@
package com.yihu.ehr.crawler.dao;
import com.yihu.ehr.crawler.dao.intf.ICrawlerDao;
import com.yihu.ehr.crawler.model.flow.CrawlerDataSetModel;
import com.yihu.ehr.framework.common.dao.SQLGeneralDAO;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
 * Created by HZY on 2016/4/27.
 */
@Repository("CrawlerDao")
public class CrawlerDao extends SQLGeneralDAO implements ICrawlerDao {
    @Override
    public List<CrawlerDataSetModel> getSchemeDataset(String versionId) throws Exception {
        return null;
    }
}

+ 18 - 0
Hos-resource/src/main/java/com/yihu/ehr/crawler/dao/intf/ICrawlerDao.java

@ -0,0 +1,18 @@
package com.yihu.ehr.crawler.dao.intf;
import com.yihu.ehr.crawler.model.flow.CrawlerDataSetModel;
import com.yihu.ehr.framework.common.dao.XSQLGeneralDAO;
import java.util.List;
/**
 * Created by HZY on 2016/4/27.
 */
public interface ICrawlerDao extends XSQLGeneralDAO {
    /**
     * 通过适配版本获取相关数据集
     */
    public List<CrawlerDataSetModel> getSchemeDataset(String versionId) throws Exception;
}

+ 25 - 45
Hos-resource/src/main/java/com/yihu/ehr/crawler/model/flow/CrawlerDataSetModel.java

@ -7,23 +7,27 @@ import java.io.Serializable;
/**
 * 任务编排-数据集关系
 *
 * @created HZY 2015/12/23.
 * @created HZY 2016/4/27.
 */
public class CrawlerFlowDataSetModel extends Result implements Serializable {
public class CrawlerDataSetModel extends Result implements Serializable {
    private Integer schemeVersionId;
    private Integer schemeId;
    private String datasetCode;
    private Integer schemeVersionId;
    private String metadataCode;
    private Integer datasetId;
    private String inputDatasetCode;
    private String datasetCode;
    private String inputMetadataCode;
    private String datasetName;
    private String inputMetadataCode2;
    public Integer getSchemeId() {
        return schemeId;
    }
    private String inputDefaultValue;
    public void setSchemeId(Integer schemeId) {
        this.schemeId = schemeId;
    }
    public Integer getSchemeVersionId() {
        return schemeVersionId;
@ -33,51 +37,27 @@ public class CrawlerFlowDataSetModel extends Result implements Serializable {
        this.schemeVersionId = schemeVersionId;
    }
    public String getDatasetCode() {
        return datasetCode;
    }
    public void setDatasetCode(String datasetCode) {
        this.datasetCode = datasetCode;
    }
    public String getMetadataCode() {
        return metadataCode;
    }
    public void setMetadataCode(String metadataCode) {
        this.metadataCode = metadataCode;
    }
    public String getInputDatasetCode() {
        return inputDatasetCode;
    }
    public void setInputDatasetCode(String inputDatasetCode) {
        this.inputDatasetCode = inputDatasetCode;
    public Integer getDatasetId() {
        return datasetId;
    }
    public String getInputMetadataCode() {
        return inputMetadataCode;
    public void setDatasetId(Integer datasetId) {
        this.datasetId = datasetId;
    }
    public void setInputMetadataCode(String inputMetadataCode) {
        this.inputMetadataCode = inputMetadataCode;
    }
    public String getInputMetadataCode2() {
        return inputMetadataCode2;
    public String getDatasetCode() {
        return datasetCode;
    }
    public void setInputMetadataCode2(String inputMetadataCode2) {
        this.inputMetadataCode2 = inputMetadataCode2;
    public void setDatasetCode(String datasetCode) {
        this.datasetCode = datasetCode;
    }
    public String getInputDefaultValue() {
        return inputDefaultValue;
    public String getDatasetName() {
        return datasetName;
    }
    public void setInputDefaultValue(String inputDefaultValue) {
        this.inputDefaultValue = inputDefaultValue;
    public void setDatasetName(String datasetName) {
        this.datasetName = datasetName;
    }
}

+ 41 - 0
Hos-resource/src/main/java/com/yihu/ehr/datacollect/controller/DataCollectController.java

@ -516,6 +516,47 @@ public class DataCollectController extends BaseController {
        }
    }
    /**
     * 保存适配方案数据集关系 (暂定)
     * @param schemeId
     * @param version
     * @param dataSetList
     * @return
     */
    @RequestMapping("addSchemeRelation")
    @ResponseBody
    public List addSchemeRelation(
            @RequestParam(value = "schemeId", required = true) Integer schemeId,
            @RequestParam(value = "version", required = true) String version,
            @RequestParam(value = "dataSetList", required = true) String dataSetList
    ) {
        try {
            return adapterSchemeService.getAdapterDataSets(schemeId,version);
        } catch (Exception ex) {
            return new ArrayList<>();
        }
    }
    /**
     * 保存适配方案 数据映射关系
     * @param schemeId
     * @param version
     * @param data
     * @return
     */
    @RequestMapping("saveCrawlerFlow")
    @ResponseBody
    public Result saveCrawlerFlowRelation(
            @RequestParam(value = "schemeId", required = true) Integer schemeId,
            @RequestParam(value = "version", required = true) String version,
            @RequestParam(value = "data", required = true) String data
    ) {
        try {
            return adapterSchemeService.saveDataSetRelation(schemeId, version, data);
        } catch (Exception ex) {
            return Result.error(ex.getMessage());
        }
    }
    /*
   任务编排数据映射

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

@ -2,15 +2,22 @@ package com.yihu.ehr.standard.service.adapter;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.yihu.ehr.common.Services;
import com.yihu.ehr.crawler.model.adapter.AdapterDataSet;
import com.yihu.ehr.crawler.model.flow.CrawlerFlowHeadModel;
import com.yihu.ehr.crawler.model.flow.CrawlerFlowModel;
import com.yihu.ehr.datacollect.model.DtoJobDataset;
import com.yihu.ehr.datacollect.model.RsJobDataset;
import com.yihu.ehr.framework.common.dao.SQLGeneralDAO;
import com.yihu.ehr.framework.constrant.Constants;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.exception.ApiException;
import com.yihu.ehr.framework.model.ActionResult;
import com.yihu.ehr.framework.model.DataGridResult;
import com.yihu.ehr.framework.util.operator.CollectionUtil;
import com.yihu.ehr.framework.util.operator.StringUtil;
import com.yihu.ehr.resource.model.RsDatasourceDataset;
import com.yihu.ehr.resource.service.IStdService;
import com.yihu.ehr.standard.model.adapter.AdapterDatasetModel;
import com.yihu.ehr.standard.model.adapter.AdapterSchemeModel;
import com.yihu.ehr.standard.model.adapter.AdapterSchemeVersionModel;
@ -23,6 +30,7 @@ import org.hibernate.Query;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
@ -38,6 +46,10 @@ public class AdapterSchemeService extends SQLGeneralDAO {
    public static final String BEAN_ID = "AdapterSchemeService";
    @Resource(name = Services.StdService)
    private IStdService stdManager;
    public AdapterSchemeModel add(String scheme) {
        Boolean existFlg = false;
        try {
@ -330,6 +342,52 @@ public class AdapterSchemeService extends SQLGeneralDAO {
        return adapterDataSet;
    }
    /**
     * 保存编排映射关系
     * @param schemeId 适配方案ID
     * @param version 适配方案版本
     * @param json  映射数据
     * @return
     * @throws Exception
     */
    public ActionResult saveDataSetRelation(Integer schemeId,String version,String json) throws Exception {
        JSONObject root = JSONObject.fromObject(json);
        JSONArray jsonList = root.getJSONArray("lines");
        JSONArray entrances = root.getJSONArray("entrances");
        String adapterVersionHql = "FROM AdapterSchemeVersionModel WHERE schemeId = :schemeId and version = :version";
        Query query = getCurrentSession().createQuery(adapterVersionHql);
        query.setParameter("schemeId", schemeId);
        query.setParameter("version", version);
        AdapterSchemeVersionModel versionModel =(AdapterSchemeVersionModel) query.uniqueResult();
        for (Object item : jsonList) {
            JSONObject obj = JSONObject.fromObject(item);
                String from = obj.getString("from");
                String to = obj.getString("to");
                String fromPort = obj.getString("fromPort");
                String toPort = obj.getString("toPort");
                //TODO 保存编排关系
            CrawlerFlowModel crawlerFlow=new CrawlerFlowModel();
            crawlerFlow.setDatasetCode(to);
            crawlerFlow.setInputDatasetCode(from);
            crawlerFlow.setMetadataCode(toPort);
            crawlerFlow.setInputMetadataCode(fromPort);
            crawlerFlow.setSchemeVersionId(versionModel.getId());
            saveEntity(crawlerFlow);
        }
        for (Object item : entrances) {
            JSONObject obj = JSONObject.fromObject(item);
            String dataSet = obj.getString("dataSet");
            String meta = obj.getString("meta");
            //TODO  保存入口数据集
            CrawlerFlowHeadModel headModel=new CrawlerFlowHeadModel();
            headModel.setSchemeVersionId(versionModel.getId());
            headModel.setDatasetCode(dataSet);
            headModel.setMetadataCode(meta);
            saveEntity(headModel);
        }
        return new ActionResult(true, "保存成功!");
    }
}

+ 18 - 0
Hos-resource/src/main/resources/hbm/resource/CrawlerDataSet.hbm.xml

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
    <class name="com.yihu.ehr.crawler.model.flow.CrawlerDataSetModel" table="crawler_dataset">
        <composite-id>
            <key-property name="schemeVersionId" column="scheme_version_id"/>
            <key-property name="datasetCode" column="dataset_id"/>
            <key-property name="schemeId" column="scheme_id"/>
        </composite-id>
        <property name="datasetCode">
            <column name="dataset_code"/>
        </property>
        <property name="datasetName">
            <column name="dataset_name"/>
        </property>
    </class>
</hibernate-mapping>

+ 0 - 24
Hos-resource/src/main/resources/hbm/resource/CrawlerFlowDataSet.hbm.xml

@ -1,24 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
    <class name="com.yihu.ehr.crawler.model.flow.CrawlerFlowModel" table="crawler_flow">
        <composite-id>
            <key-property name="schemeVersionId" column="scheme_version_id"/>
            <key-property name="datasetCode" column="dataset_code"/>
            <key-property name="metadataCode" column="metadata_code"/>
        </composite-id>
        <property name="inputDatasetCode">
            <column name="input_dataset_code"/>
        </property>
        <property name="inputMetadataCode">
            <column name="input_metadata_code"/>
        </property>
        <property name="inputMetadataCode2">
            <column name="input_metadata_code2"/>
        </property>
        <property name="inputDefaultValue">
            <column name="input_default_value"/>
        </property>
    </class>
</hibernate-mapping>