Browse Source

Merge branch '2.0' of http://192.168.1.220:10080/Amoy2/wlyy2.0 into 2.0

wangzhinan 2 years ago
parent
commit
40c911b76a
23 changed files with 499 additions and 205 deletions
  1. 1 1
      common/common-request-mapping/src/main/java/com/yihu/jw/rm/svrBasic/ApiVersion.java
  2. 2 1
      common/commons-ehr-constants/src/main/java/com/yihu/ehr/constants/ApiVersion.java
  3. 4 0
      svr/svr-basic/pom.xml
  4. 82 0
      svr/svr-basic/src/main/java/com/yihu/jw/basic/config/ActiveMQConfig.java
  5. 54 0
      svr/svr-basic/src/main/java/com/yihu/jw/basic/config/AsyncConfig.java
  6. 72 0
      svr/svr-basic/src/main/java/com/yihu/jw/basic/redis/controler/ActiveMQEndpoint.java
  7. 2 2
      svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/controller/SchemeController.java
  8. 4 4
      svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/controller/SchemeVersionController.java
  9. 1 1
      svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/controller/StandardController.java
  10. 17 17
      svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/dao/SQLGeneralDAO.java
  11. 1 1
      svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/dao/XSQLGeneralDAO.java
  12. 51 3
      svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/model/adapter/AdapterDatasetModel.java
  13. 30 0
      svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/model/adapter/AdapterMetadataModel.java
  14. 11 0
      svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/model/adapter/AdapterSchemeModel.java
  15. 114 99
      svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/service/adapter/AdapterDatasetService.java
  16. 1 1
      svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/service/adapter/AdapterMetadataService.java
  17. 3 3
      svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/service/adapter/AdapterSchemeService.java
  18. 10 10
      svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/service/adapter/AdapterSchemeVersionService.java
  19. 7 33
      svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/service/document/CDADataSetRelationshipManager.java
  20. 2 2
      svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/service/standard/StandardService.java
  21. 6 9
      svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/service/standard/StandardVersionService.java
  22. 22 11
      svr/svr-basic/src/main/resources/application.yml
  23. 2 7
      svr/svr-statistics-es/pom.xml

+ 1 - 1
common/common-request-mapping/src/main/java/com/yihu/jw/rm/svrBasic/ApiVersion.java

@ -10,5 +10,5 @@ package com.yihu.jw.rm.svrBasic;
 * @created 2015.11.05 11:29
 */
public class ApiVersion {
    public static final String Version1_0 = "/api/v1.0";      // v1.0 版本
    public static final String Version1_0 = "/";      // v1.0 版本
}

+ 2 - 1
common/commons-ehr-constants/src/main/java/com/yihu/ehr/constants/ApiVersion.java

@ -10,5 +10,6 @@ package com.yihu.ehr.constants;
 * @created 2015.11.05 11:29
 */
public class ApiVersion {
    public static final String Version1_0 = "/api/v1.0";      // v1.0 版本
//    public static final String Version1_0 = "/api/v1.0";      // v1.0 版本
    public static final String Version1_0 = "/";      // v1.0 版本
}

+ 4 - 0
svr/svr-basic/pom.xml

@ -63,6 +63,10 @@
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-activemq</artifactId>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>

+ 82 - 0
svr/svr-basic/src/main/java/com/yihu/jw/basic/config/ActiveMQConfig.java

@ -0,0 +1,82 @@
package com.yihu.jw.basic.config;
import org.apache.activemq.ActiveMQConnectionFactory;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;
import org.springframework.jms.annotation.EnableJms;
import org.springframework.jms.config.JmsListenerContainerFactory;
import org.springframework.jms.config.SimpleJmsListenerContainerFactory;
import org.springframework.jms.connection.CachingConnectionFactory;
import org.springframework.jms.core.JmsMessagingTemplate;
import org.springframework.jms.core.JmsTemplate;
import javax.jms.ConnectionFactory;
/**
 * Created by chenweida on 2017/9/9.
 * 生产者配置
 */
@EnableJms
@Configuration
public class ActiveMQConfig {
    @Value("${activemq.username}")
    private String username;
    @Value("${activemq.password}")
    private String password;
    @Value("${activemq.url}")
    private String url;
    @Bean
    public ActiveMQConnectionFactory activeMQConnectionFactory() {
        ActiveMQConnectionFactory activeMQConnectionFactory = new ActiveMQConnectionFactory(username, password, url);
        //设置异步发送
        activeMQConnectionFactory.setUseAsyncSend(true);
        return activeMQConnectionFactory;
    }
    /**
     * 缓存session链接
     */
    @Bean
    @Primary
    public CachingConnectionFactory CachingConnectionFactory() {
        CachingConnectionFactory cachingConnectionFactory = new CachingConnectionFactory();
        //目标ConnectionFactory对应真实的可以产生JMS Connection的ConnectionFactory
        cachingConnectionFactory.setTargetConnectionFactory(activeMQConnectionFactory());
        //Session缓存数量,这里属性也可以直接在这里配置
        cachingConnectionFactory.setSessionCacheSize(100);
        return cachingConnectionFactory;
    }
    @Bean
    public JmsTemplate jmsTemplate() {
        JmsTemplate jmsTemplate = new JmsTemplate();
        jmsTemplate.setConnectionFactory( CachingConnectionFactory());
        return jmsTemplate;
    }
    @Bean
    public JmsMessagingTemplate jmsMessageTemplate(){
        return new JmsMessagingTemplate(CachingConnectionFactory());
    }
    // 在Queue模式中,对消息的监听需要对containerFactory进行配置
    @Bean("queueListener")
    public JmsListenerContainerFactory<?> queueJmsListenerContainerFactory(ConnectionFactory connectionFactory){
        SimpleJmsListenerContainerFactory factory = new SimpleJmsListenerContainerFactory();
        factory.setConnectionFactory(connectionFactory);
        factory.setPubSubDomain(false);
        return factory;
    }
    //在Topic模式中,对消息的监听需要对containerFactory进行配置
    @Bean("topicListener")
    public JmsListenerContainerFactory<?> topicJmsListenerContainerFactory(ConnectionFactory connectionFactory){
        SimpleJmsListenerContainerFactory factory = new SimpleJmsListenerContainerFactory();
        factory.setConnectionFactory(connectionFactory);
        factory.setPubSubDomain(true);
        return factory;
    }
}

+ 54 - 0
svr/svr-basic/src/main/java/com/yihu/jw/basic/config/AsyncConfig.java

@ -0,0 +1,54 @@
package com.yihu.jw.basic.config;
import org.apache.tomcat.util.threads.ThreadPoolExecutor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
import java.util.concurrent.Executor;
/**
 * Created by chenweida on 2016.10.18.
 * 启用多綫程
 */
@Configuration
@EnableAsync
public class AsyncConfig {
    /**
     * 如果池中的实际线程数小于corePoolSize,无论是否其中有空闲的线程,都会给新的任务产生新的线程
     */
    private int corePoolSize = 5;
    /**
     * 如果池中的线程数=maximumPoolSize,则有空闲线程使用空闲线程,否则新任务放入queueCapacity.
     * 设定 比 系统native thread个数要大的话,会优先抛出Java.lang.OutOfMemoryError: unable to create new native thread
     */
    private int maxPoolSize = 10;
    /**
     * 缓冲队列大小
     */
    private int queueCapacity = 100;
    /**
     * 线程池维护线程所允许的空闲时间  秒
     */
    private int keepAliveSeconds = 300;
    @Bean("wlyyExecutor")
    public ThreadPoolTaskExecutor wlyyExecutor() {
        ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
        executor.setCorePoolSize(corePoolSize);
        executor.setMaxPoolSize(maxPoolSize);
        executor.setQueueCapacity(queueCapacity);
        executor.setKeepAliveSeconds(keepAliveSeconds);
        /** Reject策略预定义有四种:
         (1)ThreadPoolExecutor.AbortPolicy策略,是默认的策略,处理程序遭到拒绝将抛出运行时 RejectedExecutionException。
         (2)ThreadPoolExecutor.CallerRunsPolicy策略 ,调用者的线程会执行该任务,如果执行器已关闭,则丢弃.
         (3)ThreadPoolExecutor.DiscardPolicy策略,不能执行的任务将被丢弃.
         (4)ThreadPoolExecutor.DiscardOldestPolicy策略,如果执行程序尚未关闭,则位于工作队列头部的任务将被删除,然后重试执行程序(如果再次失败,则重复此过程).
         */
        executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());
        executor.initialize();
        return executor;
    }
}

+ 72 - 0
svr/svr-basic/src/main/java/com/yihu/jw/basic/redis/controler/ActiveMQEndpoint.java

@ -0,0 +1,72 @@
package com.yihu.jw.basic.redis.controler;
import com.yihu.ehr.constants.ApiVersion;
import com.yihu.jw.restmodel.web.endpoint.EnvelopRestEndpoint;
import io.swagger.annotations.Api;
import org.apache.activemq.command.ActiveMQTopic;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jms.annotation.JmsListener;
import org.springframework.jms.core.JmsMessagingTemplate;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * Created by yeshijie on 2022/9/15.
 */
@RestController
@Api( tags = {"ActiveMQ--消息队列接口"})
public class ActiveMQEndpoint extends EnvelopRestEndpoint {
    @Autowired
    private JmsMessagingTemplate jmsMessagingTemplate;
    @PostMapping("/queue/test")
    public String sendQueue(String str,String queue) {
        this.sendMessage(queue, str);
        return "success";
    }
    @PostMapping("/topic/test")
    public String sendTopic(String str,String topic) {
        jmsMessagingTemplate.convertAndSend(new ActiveMQTopic(topic), str);
        return "success";
    }
    // 发送消息,destination是发送到的队列,message是待发送的消息
    private void sendMessage(String queue, final String message){
        jmsMessagingTemplate.convertAndSend(queue, message);
    }
    //queue模式的消费者
    @JmsListener(destination="queue1", containerFactory="queueListener")
    public void readActiveQueue1(String message) {
        System.out.println("queue1接受到:" + message);
    }
    //queue模式的消费者
    @JmsListener(destination="queue2", containerFactory="queueListener")
    public void readActiveQueue2(String message) {
        System.out.println("queue2接受到:" + message);
    }
    //queue模式的消费者
    @JmsListener(destination="topic1", containerFactory="queueListener")
    public void readActiveQueue3(String message) {
        System.out.println("queue3接受到:" + message);
    }
    //topic模式的消费者
    @JmsListener(destination="topic1", containerFactory="topicListener")
    public void readActiveTopic1(String message) {
        System.out.println("topic1接受到:" + message);
    }
    //topic模式的消费者
    @JmsListener(destination="topic2", containerFactory="topicListener")
    public void readActiveTopic2(String message) {
        System.out.println("topic2接受到:" + message);
    }
}

+ 2 - 2
svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/controller/SchemeController.java

@ -37,7 +37,7 @@ public class SchemeController extends EnvelopRestEndpoint {
    @ApiOperation(value = "获取适配方案", produces = "application/json", notes = "获取适配方案")
    public ObjEnvelop get(
            @ApiParam(name = "schemeId", value = "标准版本ID")
            @RequestParam(value = "schemeId") Integer schemeId) {
            @RequestParam(value = "schemeId") Long schemeId) {
        return adapterSchemeService.get(schemeId);
    }
@ -64,7 +64,7 @@ public class SchemeController extends EnvelopRestEndpoint {
    @ApiOperation(value = "删除适配方案",  produces = "application/json", notes = "删除适配方案")
    public Envelop delete(
            @ApiParam(name = "schemeId", value = "适配方案ID")
            @RequestParam(value = "schemeId") Integer schemeId) {
            @RequestParam(value = "schemeId") Long schemeId) {
        return adapterSchemeService.delete(schemeId);
    }
}

+ 4 - 4
svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/controller/SchemeVersionController.java

@ -24,7 +24,7 @@ public class SchemeVersionController extends EnvelopRestEndpoint {
    @ApiOperation(value = "根据版本id获取适配方案信息",  produces = "application/json", notes = "获取适配版本")
    public ObjEnvelop get(
            @ApiParam(name = "versionId", value = "适配版本ID")
            @RequestParam(value = "versionId") Integer versionId) {
            @RequestParam(value = "versionId") Long versionId) {
        return adapterSchemeVersion.get(versionId);
    }
@ -51,7 +51,7 @@ public class SchemeVersionController extends EnvelopRestEndpoint {
    @ApiOperation(value = "发布适配版本",  produces = "application/json", notes = "发布适配版本")
    public ObjEnvelop publish(
            @ApiParam(name = "versionId", value = "适配版本ID")
            @RequestParam(value = "versionId") Integer versionId,
            @RequestParam(value = "versionId") Long versionId,
            @ApiParam(name = "publisher", value = "发布者")
            @RequestParam(value = "publisher", required = false) String publisher) {
        return adapterSchemeVersion.publish(versionId, publisher);
@ -62,7 +62,7 @@ public class SchemeVersionController extends EnvelopRestEndpoint {
    @ApiOperation(value = "删除版本",  produces = "application/json", notes = "删除版本")
    public Envelop delete(
            @ApiParam(name = "versionId", value = "标准版本ID")
            @RequestParam(value = "versionId") Integer versionId) {
            @RequestParam(value = "versionId") Long versionId) {
        return adapterSchemeVersion.delete(versionId);
    }
@ -91,7 +91,7 @@ public class SchemeVersionController extends EnvelopRestEndpoint {
    @ApiOperation(value = "获取适配方案版本列表", produces = "application/json", notes = "获取标准版本列表")
    public ListEnvelop getList(
            @ApiParam(name = "schemeId", value = "适配方案ID")
            @RequestParam(value = "schemeId") Integer schemeId,
            @RequestParam(value = "schemeId") Long schemeId,
            @ApiParam(name = "condition", value = "Search param,Must be json")
            @RequestParam(value = "condition", required = false) String condition,
            @ApiParam(name = "order", value = "Order param,Must be json.ascending:asc,descending:desc")

+ 1 - 1
svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/controller/StandardController.java

@ -86,6 +86,6 @@ public class StandardController extends EnvelopRestEndpoint {
            @RequestParam(value = "rows", required = false) Integer rows,
            @ApiParam(name = "page", value = "Start position of result set. Must be an integer")
            @RequestParam(value = "page", required = false) Integer page) {
        return standardService.getDictionaryResult( order, rows, page);
        return standardService.getDictionaryResult(condition, order, rows, page);
    }
}

+ 17 - 17
svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/dao/SQLGeneralDAO.java

@ -71,11 +71,11 @@ public class SQLGeneralDAO implements XSQLGeneralDAO {
        DataGridResult dataGridResult = new DataGridResult();
        Query query = currentSession().createQuery(hql);
        if (page != null && rows != null) {
            dataGridResult.setPageSize(rows.intValue());
            dataGridResult.setCurrPage(page.intValue());
            dataGridResult.setPageSize(rows);
            dataGridResult.setCurrPage(page);
            dataGridResult.setTotalCount(query.list().size());
            query.setMaxResults(rows.intValue());
            query.setFirstResult((page.intValue() - 1) * rows.intValue());
            query.setMaxResults(rows);
            query.setFirstResult((page - 1) * rows);
            dataGridResult.setDetailModelList(query.list());
        } else {
            List list = query.list();
@ -89,11 +89,11 @@ public class SQLGeneralDAO implements XSQLGeneralDAO {
    public DataGridResult getDataGridResult(Query query, Integer page, Integer rows) {
        DataGridResult dataGridResult = new DataGridResult();
        if (page != null && rows != null) {
            dataGridResult.setPageSize(rows.intValue());
            dataGridResult.setCurrPage(page.intValue());
            dataGridResult.setPageSize(rows);
            dataGridResult.setCurrPage(page);
            dataGridResult.setTotalCount(query.list().size());
            query.setMaxResults(rows.intValue());
            query.setFirstResult((page.intValue() - 1) * rows.intValue());
            query.setMaxResults(rows);
            query.setFirstResult((page - 1) * rows);
            dataGridResult.setDetailModelList(query.list());
        } else {
            List list = query.list();
@ -110,14 +110,14 @@ public class SQLGeneralDAO implements XSQLGeneralDAO {
        StandardVersion standardVersion = new StandardVersion(version);
        String tableName = standardVersion.getTableName(dataType);
        String hql =
                "DELETE FROM " + tableName +
                        " WHERE id in (:ids) ";
        Query query = this.getCurrentSession().createQuery(hql);
        query.setParameterList("ids", ids);
        return query.executeUpdate() > 0;
        StringBuffer sb = new StringBuffer("'");
        for ( int i= 0; i < ids.length; i++){
            sb.append(ids[i]).append("','");
        }
        String st = sb.toString();
        st = st.substring(1,st.length()-1);
        String sql ="DELETE FROM " + tableName +" WHERE id in ("+st+") ";
        return jdbcTemplate.update(sql) > 0;
    }
@ -266,7 +266,7 @@ public class SQLGeneralDAO implements XSQLGeneralDAO {
        return criteria.list();
    }
    public <T> List getEntityListByParentId(Class<T> cls, String parentFiledName, Integer patentId, String condition, String order, Integer limit, Integer offset) throws IOException {
    public <T> List<T> getEntityListByParentId(Class<T> cls, String parentFiledName, Long patentId, String condition, String order, Integer limit, Integer offset) throws IOException {
        Session session = this.getCurrentSession();
        Criteria criteria = session.createCriteria(cls);
        criteria.add(Restrictions.eq(parentFiledName, patentId));

+ 1 - 1
svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/dao/XSQLGeneralDAO.java

@ -56,7 +56,7 @@ public interface XSQLGeneralDAO {
    <T> List getEntityList(Class<T> var1, String var2, String var3, Integer var4, Integer var5) throws IOException;
    <T> List getEntityListByParentId(Class<T> var1, String var2, Integer var3, String var4, String var5, Integer var6, Integer var7) throws IOException;
    <T> List getEntityListByParentId(Class<T> var1, String var2, Long var3, String var4, String var5, Integer var6, Integer var7) throws IOException;
    <T> List getList(Class<T> var1, String var2, String var3, String var4, Integer var5, Integer var6);

+ 51 - 3
svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/model/adapter/AdapterDatasetModel.java

@ -26,11 +26,26 @@ public class AdapterDatasetModel extends Result implements Serializable {
    @Column(name = "std_dataset_name")
    private String stdDatasetName;
    @Column(name = "adapter_dataset_id")
    private Long adapterDatasetId;
    private String adapterDatasetId;
    @Column(name = "adapter_dataset_code")
    private String adapterDatasetCode;
    @Column(name = "adapter_dataset_name")
    private String adapterDatasetName;
    @Column(name="main_dataset_code")
    private String mainDatasetCode;
    @Column(name="main_dataset_name")
    private String mainDatasetName;
    @Column(name="is_clone")
    private Integer isClone; //0 不是克隆(默认)   1是克隆
    @Column(name="need_crawer")
    private Integer needCrawer;//0不需要采集   1需要采集(默认)
    public static AdapterDatasetModel error(String message) {
        AdapterDatasetModel re= new AdapterDatasetModel();
        re.successFlg = false;
        re.message = message;
        return re;
    }
    public Long getId() {
        return id;
@ -72,11 +87,11 @@ public class AdapterDatasetModel extends Result implements Serializable {
        this.stdDatasetName = stdDatasetName;
    }
    public Long getAdapterDatasetId() {
    public String getAdapterDatasetId() {
        return adapterDatasetId;
    }
    public void setAdapterDatasetId(Long adapterDatasetId) {
    public void setAdapterDatasetId(String adapterDatasetId) {
        this.adapterDatasetId = adapterDatasetId;
    }
@ -95,4 +110,37 @@ public class AdapterDatasetModel extends Result implements Serializable {
    public void setAdapterDatasetName(String adapterDatasetName) {
        this.adapterDatasetName = adapterDatasetName;
    }
    public String getMainDatasetCode() {
        return mainDatasetCode;
    }
    public void setMainDatasetCode(String mainDatasetCode) {
        this.mainDatasetCode = mainDatasetCode;
    }
    public String getMainDatasetName() {
        return mainDatasetName;
    }
    public void setMainDatasetName(String mainDatasetName) {
        this.mainDatasetName = mainDatasetName;
    }
    public Integer getIsClone() {
        return isClone;
    }
    public void setIsClone(Integer isClone) {
        this.isClone = isClone;
    }
    public Integer getNeedCrawer() {
        return needCrawer;
    }
    public void setNeedCrawer(Integer needCrawer) {
        this.needCrawer = needCrawer;
    }
}

+ 30 - 0
svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/model/adapter/AdapterMetadataModel.java

@ -43,6 +43,12 @@ public class AdapterMetadataModel extends Result implements Serializable {
    private Long adapterDictId;
    @Column(name = "adapter_info")
    private String adapterInfo;
    @Column(name = "belong_adapter_id")
    private Long belongAdapterId;
    @Column(name = "adapter_default")
    private String adapterDefault;
    @Column(name="need_crawer")
    private Integer needCrawer;//0不需要采集   1需要采集(默认)
    public String getAdapterInfo() {
        return adapterInfo;
@ -155,4 +161,28 @@ public class AdapterMetadataModel extends Result implements Serializable {
    public void setAdapterDictId(Long adapterDictId) {
        this.adapterDictId = adapterDictId;
    }
    public Long getBelongAdapterId() {
        return belongAdapterId;
    }
    public void setBelongAdapterId(Long belongAdapterId) {
        this.belongAdapterId = belongAdapterId;
    }
    public String getAdapterDefault() {
        return adapterDefault;
    }
    public void setAdapterDefault(String adapterDefault) {
        this.adapterDefault = adapterDefault;
    }
    public Integer getNeedCrawer() {
        return needCrawer;
    }
    public void setNeedCrawer(Integer needCrawer) {
        this.needCrawer = needCrawer;
    }
}

+ 11 - 0
svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/model/adapter/AdapterSchemeModel.java

@ -40,6 +40,9 @@ public class AdapterSchemeModel extends Result implements Serializable {
    @Column(name="std_version")
    private String stdVersion;
    @Column(name="std_publisher_org_code")
    private String stdPublisherOrgCode;
    @Column(name="adapter_std_id")
    private Long adapterStdId;
@ -136,4 +139,12 @@ public class AdapterSchemeModel extends Result implements Serializable {
    public void setAdapterPublisherOrgCode(String adapterPublisherOrgCode) {
        this.adapterPublisherOrgCode = adapterPublisherOrgCode;
    }
    public String getStdPublisherOrgCode() {
        return stdPublisherOrgCode;
    }
    public void setStdPublisherOrgCode(String stdPublisherOrgCode) {
        this.stdPublisherOrgCode = stdPublisherOrgCode;
    }
}

+ 114 - 99
svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/service/adapter/AdapterDatasetService.java

@ -40,7 +40,10 @@ import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.StringUtils;
import javax.annotation.Resource;
import java.io.IOException;
import java.util.*;
@Transactional
@ -55,7 +58,7 @@ public class AdapterDatasetService extends SQLGeneralDAO {
    @Autowired
    private AdapterSchemeVersionService adapterSchemeVersionService;
    @Autowired
    @Resource(name = "wlyyExecutor")
    private ThreadPoolTaskExecutor threadPoolTaskExecutor;
    @Autowired
@ -193,6 +196,81 @@ public class AdapterDatasetService extends SQLGeneralDAO {
        }
    }
    public List<TreeView> getAdapterCustomize(String adapterVersion) throws IOException {
        List<AdapterDatasetModel> adapterDataSetList = searchPage(AdapterDatasetModel.class, AdapterVersion.DataSetTablePrefix,adapterVersion, "", null, null, null,false);
        List<TreeView> adapterCustomizeList = new ArrayList<>();
        int i = 0;//用于判断左侧根节点是否需要全选
        for (AdapterDatasetModel adapterDataset : adapterDataSetList) {
            TreeView parent = new TreeView();
            parent.setId("SD" + adapterDataset.getId());
            parent.setPid("S0");
            parent.setText(adapterDataset.getStdDatasetName());
            if(adapterDataset.getNeedCrawer()!=null && adapterDataset.getNeedCrawer()==1){
                i++;
                parent.setIschecked(true);
                //添加到右侧树形列表
                TreeView rightParent = new TreeView();
                rightParent.setId("AD" + adapterDataset.getId());
                rightParent.setPid("A0");
                rightParent.setText(adapterDataset.getStdDatasetName());
                rightParent.setIschecked(true);
                adapterCustomizeList.add(rightParent);
            }else{
                parent.setIschecked(false);
            }
            adapterCustomizeList.add(parent);
            Long belongDatasetId = adapterDataset.getId();
            List<AdapterMetadataModel> adapterMetaDataList = adapterMetadataService.searchPage(AdapterMetadataModel.class, AdapterVersion.MetaDataTablePrefix,adapterVersion, "belongAdapterId="+belongDatasetId, null, null, null,false) ;
            //数据元
            for (AdapterMetadataModel adapterMetadat : adapterMetaDataList) {
                TreeView child = new TreeView();
                child.setId("SM" + adapterMetadat.getId());
                child.setPid("SD" + belongDatasetId);
                child.setText(adapterMetadat.getStdMetadataName());
                if(adapterMetadat.getNeedCrawer()!= null && adapterMetadat.getNeedCrawer()==1){
                    child.setIschecked(true);
                    //添加到右侧树形列表
                    TreeView rightChild = new TreeView();
                    rightChild.setId("AM" + adapterMetadat.getId());
                    rightChild.setPid("AD" + adapterDataset.getId());
                    rightChild.setText(adapterMetadat.getStdMetadataName());
                    rightChild.setIschecked(true);
                    adapterCustomizeList.add(rightChild);
                } else {
                    child.setIschecked(false);
                }
                adapterCustomizeList.add(child);
            }
        }
        //添加左侧根节点
        TreeView leftParent = new TreeView();
        leftParent.setId("S0");
        leftParent.setPid("-1");
        leftParent.setText("数据集");
        if(i >= 1){
            //首先添加右侧根节点
            TreeView adapterRoot = new TreeView();
            adapterRoot.setId("A0");
            adapterRoot.setPid("-1");
            adapterRoot.setText("数据集");
            adapterRoot.setIschecked(true);
            adapterCustomizeList.add(adapterRoot);
        }
        if (i == adapterDataSetList.size()) {
            leftParent.setIschecked(true);
        } else {
            leftParent.setIschecked(false);
        }
        adapterCustomizeList.add(leftParent);
        return adapterCustomizeList;
    }
    public void getAdapterCustomize(String adapterVersion, List<TreeView> treeViewList, List<Long> hasCheckDatasetIdList, List<Long> hasCheckMetadataIdList) {
        boolean adapter = false;  //定制是否添加根节点
        //获取所有定制数据集
@ -321,11 +399,7 @@ public class AdapterDatasetService extends SQLGeneralDAO {
    public ListEnvelop getDatasetCustomize(String adapterVersion, String stdVersion) {
        try {
            List<TreeView> treeViewList = new ArrayList<>();
            List<Long> hasCheckDatasetIdList = new ArrayList<>();
            List<Long> hasCheckMetadataIdList = new ArrayList<>();
            getAdapterCustomize(adapterVersion, treeViewList, hasCheckDatasetIdList, hasCheckMetadataIdList);
            getStdCustomize(stdVersion, treeViewList, hasCheckDatasetIdList, hasCheckMetadataIdList);
            List<TreeView> treeViewList = getAdapterCustomize(adapterVersion);
            ListEnvelop detailModelResult = ListEnvelop.getSuccess("获取定制数据集列表成功",treeViewList);
            return detailModelResult;
        } catch (Exception e) {
@ -358,7 +432,7 @@ public class AdapterDatasetService extends SQLGeneralDAO {
            }
            if (newDatasetIdList.size() == 0) {
                return Envelop.getError("定制内容为空");
                return Envelop.getError("定制数据集失败");
            }
            updateDatasetCustomizeData(schemeId, aVersion, sVersion, newDatasetIdList, newMetadataIdList);
@ -370,102 +444,43 @@ public class AdapterDatasetService extends SQLGeneralDAO {
    }
    public void updateDatasetCustomizeData(Long schemeId, AdapterVersion aVersion, StandardVersion sVersion, List<Long> newDatasetIdList, List<Long> newMetadataIdList) throws Exception {
        List<StdMetaDataModel> metadataList = new ArrayList<StdMetaDataModel>();
        if (newMetadataIdList.size() > 0) {
            SqlCreator sqlCreator = new SqlCreator(StdMetaDataModel.class);
            sqlCreator.inCondition("id", newMetadataIdList);
            String sql = sqlCreator.selectData(sVersion.getMetaDataTableName());
            metadataList = jdbcTemplate.query(sql,new BeanPropertyRowMapper<>(StdMetaDataModel.class));
        //首先把适配数据集和适配的数据元,字典 全部设置成不需要采集
        String dataSetTableName = aVersion.getDataSetTableName();
        String metaDataTableName = aVersion.getMetaDataTableName();
        String dictName = aVersion.getDictTableName();
        jdbcTemplate.execute("update "+dataSetTableName +" set need_crawer=0");
        jdbcTemplate.execute("update "+metaDataTableName +" set need_crawer=0");
        jdbcTemplate.execute("update "+dictName +" set need_crawer=0");
        //设置需要采集的数据集
        if(CollectionUtils.isNotEmpty(newDatasetIdList)){
            String ids="";
            for(Long id:newDatasetIdList){
                ids+=","+id;
            }
            jdbcTemplate.execute("update "+dataSetTableName +" set need_crawer=1 where id in ("+ids.substring(1,ids.length())+")");
        }
        List<Long> newDictdList = new ArrayList<>();
        for (StdMetaDataModel stdMetaDataModel : metadataList) {
            if (stdMetaDataModel.getDictId() != null && !newDictdList.contains(stdMetaDataModel.getDictId())) {
                newDictdList.add(stdMetaDataModel.getDictId());
        String metadaIds = "";
        //设置需要采集的数据元
        if(CollectionUtils.isNotEmpty(newMetadataIdList)){
            for(Long id:newMetadataIdList){
                metadaIds+=","+id;
            }
            metadaIds = metadaIds.substring(1, metadaIds.length());
            jdbcTemplate.execute("update "+metaDataTableName +" set need_crawer=1 where id in ("+metadaIds+")");
        }
        List<String> insertSqlList = new ArrayList<>();
        // 找出新增 删除  modify by cyj
        List<AdapterDatasetModel> datasetModels = selectData(aVersion.getDataSetTableName(), AdapterDatasetModel.class);
        List<AdapterMetadataModel> metadataModels = selectData(aVersion.getMetaDataTableName(), AdapterMetadataModel.class);
        List<AdapterDictModel> dictModels = selectData(aVersion.getDictTableName(), AdapterDictModel.class);
//        List<AdapterDictEntryModel> dictEntryModels = selectData(aVersion.getDictEntryTableName(), AdapterDictEntryModel.class);
        List<Long> oldDatasetIdList = new ArrayList<>();
        for (AdapterDatasetModel datasetModel : datasetModels) {
            oldDatasetIdList.add(datasetModel.getId());
        }
        List<Long> oldMetadataIdList = new ArrayList<>();
        for (AdapterMetadataModel metadataModel : metadataModels) {
            oldMetadataIdList.add(metadataModel.getId());
        }
        List<Long> oldDictIdList = new ArrayList<>();
        for (AdapterDictModel dictModel : dictModels) {
            oldDictIdList.add(dictModel.getId());
        }
//        List<Integer> oldDictEntryIdList = new ArrayList<>();
//        for (AdapterDictEntryModel entryModel : dictEntryModels) {
//            oldDictEntryIdList.add(entryModel.getStdDictId());
//        }
        Map<String, List<Long>> datasetMap = getDiffId(newDatasetIdList, oldDatasetIdList);
        Map<String, List<Long>> metaMap = getDiffId(newMetadataIdList, oldMetadataIdList);
        Map<String, List<Long>> dicMap = getDiffId(newDictdList, oldDictIdList);
//        Map<String,List<Integer>> dicEntryMap = getDiffId(newDictdList,oldDictEntryIdList);
//        add del
        List<Long> delDatasetList = datasetMap.get("del");
        if (delDatasetList.size() > 0) {
            insertSqlList.add(delData(aVersion.getDataSetTableName(), "id", delDatasetList));
        }
        List<Long> delMetaList = metaMap.get("del");
        if (delMetaList.size() > 0) {
            insertSqlList.add(delData(aVersion.getMetaDataTableName(), "id", delMetaList));
        }
        List<Long> delDicList = dicMap.get("del");
        if (delDicList.size() > 0) {
            insertSqlList.add(delData(aVersion.getDictTableName(), "id", delDicList));
            insertSqlList.add(delData(aVersion.getDictEntryTableName(), "std_dict_id", delDicList));
        }
/*        insertSqlList.add(SqlConstants.DELETE + SqlConstants.FROM + aVersion.getDataSetTableName());
        insertSqlList.add(SqlConstants.DELETE + SqlConstants.FROM + aVersion.getMetaDataTableName());
        insertSqlList.add(SqlConstants.DELETE + SqlConstants.FROM + aVersion.getDictTableName());
        insertSqlList.add(SqlConstants.DELETE + SqlConstants.FROM + aVersion.getDictEntryTableName());*/
        List<Long> addDataSetList = datasetMap.get("add");
        if (addDataSetList.size() > 0) {
            insertSqlList.add(insertData(aVersion.getDataSetTableName(), sVersion.getDataSetTableName(),
                    new String[]{"id,std_dataset_id,std_dataset_code,std_dataset_name"},
                    new String[]{"id,id,code,name"},
                    schemeId,
                    "id",
                    addDataSetList));
        }
        List<Long> addMetaList = metaMap.get("add");
        if (addMetaList.size() > 0) {
            insertSqlList.add(insertData(aVersion.getMetaDataTableName(), sVersion.getMetaDataTableName(),
                    new String[]{"id,std_metadata_id,std_metadata_code,std_metadata_name,std_dataset_id,std_dict_id"},
                    new String[]{"id,id,code,name,dataset_id,dict_id"},
                    schemeId,
                    "id",
                    addMetaList));
        }
        List<Long> addDicList = dicMap.get("add");
        if (addDicList.size() > 0) {
            insertSqlList.add(insertData(aVersion.getDictTableName(), sVersion.getDictTableName(),
                    new String[]{"id,std_dict_id,std_dict_code,std_dict_name"},
                    new String[]{"id,id,code,name"},
                    schemeId,
                    "id",
                    addDicList));
            insertSqlList.add(insertData(aVersion.getDictEntryTableName(), sVersion.getDictEntryTableName(),
                    new String[]{"id,std_entry_id,std_entry_code,std_entry_value,std_dict_id"},
                    new String[]{"id,id,code,value,dict_id"},
                    schemeId,
                    "dict_id",
                    addDicList));
        }
        if (insertSqlList.size() > 0) {
            insertBatch(insertSqlList);
        if(!StringUtils.isEmpty(metadaIds)){
            //设置需要采集的字典
            List<Long> dictIds = jdbcTemplate.queryForList("select DISTINCT  std_dict_id from " + metaDataTableName + " where std_dict_id is not null and std_dict_id!='' and id in (" + metadaIds + ")",Long.class);
            if(CollectionUtils.isNotEmpty(dictIds)){
                String ids = "";
                for(Long id:dictIds){
                    ids+=","+id;
                }
                jdbcTemplate.execute("update "+dictName +" set need_crawer=1 where id in ("+ids.substring(1,ids.length())+")");
            }
        }
    }
@ -686,7 +701,7 @@ public class AdapterDatasetService extends SQLGeneralDAO {
    public void saveAdaptDataset(AdapterDatasetModel strategyDataset,StdDataSetModel orgDataset,String version) throws Exception {
        if(null != strategyDataset){
            strategyDataset.setAdapterDatasetId(orgDataset.getId());
            strategyDataset.setAdapterDatasetId(orgDataset.getId()+"");
            strategyDataset.setAdapterDatasetCode(orgDataset.getCode());
            strategyDataset.setAdapterDatasetName(orgDataset.getName());
            JsonNode jsonNode = objectMapper.readTree(objectMapper.writeValueAsString(strategyDataset));

+ 1 - 1
svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/service/adapter/AdapterMetadataService.java

@ -326,7 +326,7 @@ public class AdapterMetadataService extends SQLGeneralDAO {
                List<AdapterDatasetModel> adapterDatasetModelList = jdbcTemplate.query(sql,new BeanPropertyRowMapper<>(AdapterDatasetModel.class));
                for (AdapterDatasetModel model : adapterDatasetModelList) {
                    ApiMetadataResultDetailModel metadataModel = metadataResultMap.get(model.getStdDatasetId());
                    model.setAdapterDatasetId(metadataModel.getAdapterDatasetId());
                    model.setAdapterDatasetId(metadataModel.getAdapterDatasetId()+"");
                    model.setAdapterDatasetCode(metadataModel.getAdapterDatasetCode());
                    model.setAdapterDatasetName(metadataModel.getAdapterDatasetName());
                    JsonNode jsonNode = objectMapper.readTree(objectMapper.writeValueAsString(model));

+ 3 - 3
svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/service/adapter/AdapterSchemeService.java

@ -71,7 +71,7 @@ public class AdapterSchemeService extends SQLGeneralDAO {
        return false;
    }
    public Envelop delete(Integer schemeId) {
    public Envelop delete(Long schemeId) {
        Boolean existFlg = false;
        try {
            AdapterSchemeModel model = getEntity(AdapterSchemeModel.class, schemeId);
@ -121,7 +121,7 @@ public class AdapterSchemeService extends SQLGeneralDAO {
        }
    }
    public ObjEnvelop get(Integer schemeId) {
    public ObjEnvelop get(Long schemeId) {
        try {
            AdapterSchemeModel model = getEntity(AdapterSchemeModel.class, schemeId);
            return ObjEnvelop.getSuccess("获取适配成功",model);
@ -256,7 +256,7 @@ public class AdapterSchemeService extends SQLGeneralDAO {
    }
    public boolean existSchemeVersionValid(Integer schemeId) {
    public boolean existSchemeVersionValid(Long schemeId) {
        String hql = "FROM AdapterSchemeVersionModel WHERE schemeId = :schemeId";
        Query query = getCurrentSession().createQuery(hql);
        query.setParameter("schemeId", schemeId);

+ 10 - 10
svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/service/adapter/AdapterSchemeVersionService.java

@ -45,7 +45,7 @@ public class AdapterSchemeVersionService extends SQLGeneralDAO {
    public static final String BEAN_ID = "AdapterSchemeVersionService";
    public ListEnvelop getDictionaryResult(Integer schemeId, String condition, String order, Integer rows, Integer page) {
    public ListEnvelop getDictionaryResult(Long schemeId, String condition, String order, Integer rows, Integer page) {
        try {
            List<AdapterSchemeVersionModel> adapterSchemeVersionModelList = getEntityListByParentId(
                    AdapterSchemeVersionModel.class, "schemeId", schemeId, condition, order, rows, page);
@ -147,7 +147,7 @@ public class AdapterSchemeVersionService extends SQLGeneralDAO {
        return false;
    }
    public Envelop delete(Integer versionId) {
    public Envelop delete(Long versionId) {
        Boolean publishedFlg = false;
        try {
            AdapterSchemeVersionModel versionModel = getEntity(AdapterSchemeVersionModel.class, versionId);
@ -168,7 +168,7 @@ public class AdapterSchemeVersionService extends SQLGeneralDAO {
        }
    }
    public ObjEnvelop get(Integer versionId) {
    public ObjEnvelop get(Long versionId) {
        try {
            AdapterSchemeVersionModel versionModel = getEntity(AdapterSchemeVersionModel.class, versionId);
            return ObjEnvelop.getSuccess("获取适配版本方成功",versionModel);
@ -211,7 +211,7 @@ public class AdapterSchemeVersionService extends SQLGeneralDAO {
        }
    }
    public ObjEnvelop publish(Integer versionId, String publisher) {
    public ObjEnvelop publish(Long versionId, String publisher) {
        try {
            AdapterSchemeVersionModel adapterSchemeVersionModel = getEntity(AdapterSchemeVersionModel.class, versionId);
            //TODO:generate standard version file;
@ -387,8 +387,7 @@ public class AdapterSchemeVersionService extends SQLGeneralDAO {
        String[] tables = {version.getDataSetTableName(),
                version.getMetaDataTableName(),
                version.getDictTableName(),
                version.getDictEntryTableName(),
                version.getDatasetRelationTableName()};
                version.getDictEntryTableName()};
        List<String> deleteSqlList = new ArrayList<>();
        boolean temp = false;
        for (int i = 0; i < tables.length; ++i) {
@ -434,7 +433,8 @@ public class AdapterSchemeVersionService extends SQLGeneralDAO {
        List<String> sqlList = new ArrayList<>();
        SqlCreator sqlCreator = new SqlCreator(StdMetaDataModel.class);
        String sql = sqlCreator.selectData(stdVersion.getMetaDataTableName());
        List<StdMetaDataModel> metadataList = jdbcTemplate.query(sql,new BeanPropertyRowMapper<>(StdMetaDataModel.class));
        Query query = getQuery(sqlCreator, sql);
        List<StdMetaDataModel> metadataList = query.list();
        List<Long> newDictdList = new ArrayList<>();
        for (StdMetaDataModel stdMetaDataModel : metadataList) {
            if (stdMetaDataModel.getDictId() != null && !newDictdList.contains(stdMetaDataModel.getDictId())) {
@ -448,8 +448,8 @@ public class AdapterSchemeVersionService extends SQLGeneralDAO {
                "",
                null));
        sqlList.add(insertData(adapterVersion.getMetaDataTableName(), stdVersion.getMetaDataTableName(),
                new String[]{"id,std_metadata_id,std_metadata_code,std_metadata_name,std_dataset_id,std_dict_id"},
                new String[]{"id,id,code,name,dataset_id,dict_id"},
                new String[]{"id,std_metadata_id,std_metadata_code,std_metadata_name,std_dataset_id,std_dict_id,belong_adapter_id,adapter_info"},
                new String[]{"id,id,inner_code,name,dataset_id,dict_id,dataset_id,0"},
                scheme.getId(),
                "",
                null));
@ -477,7 +477,7 @@ public class AdapterSchemeVersionService extends SQLGeneralDAO {
        adapterTableList.add(adapterVersion.MetaDataTablePrefix);
        adapterTableList.add(adapterVersion.DictTablePrefix);
        adapterTableList.add(adapterVersion.DictEntryTablePrefix);
        adapterTableList.add(adapterVersion.DatasetRelationTablePrefix);
//        adapterTableList.add(adapterVersion.DatasetRelationTablePrefix);
        for (String table : adapterTableList) {
            String sql = SqlConstants.CREATE_TABLE + table + SqlConstants.UNDERLINE + adapterVersion.getVersion() + SqlConstants.LIKE + table;
            sqlList.add(sql);

+ 7 - 33
svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/service/document/CDADataSetRelationshipManager.java

@ -35,6 +35,7 @@ import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import java.io.*;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
@ -62,8 +63,6 @@ public class CDADataSetRelationshipManager extends SQLGeneralDAO {
    /**
     * 根据关系ID删除关联关系
     *
     * @param ids
     */
    public boolean deleteRelationshipById(String version, String[] ids) {
        delete(BaseCDADataSetRelationship.class,ids, StandardVersion.CDADatasetTable, version);
@ -72,9 +71,6 @@ public class CDADataSetRelationshipManager extends SQLGeneralDAO {
    /**
     * 同时删除多个时 CDA ID用逗号隔开
     *
     * @param versionCode
     * @param ids
     */
    public boolean deleteDocument(String[] ids,String dataType,String versionCode) throws IOException {
        deleteRelationshipByCdaIds(versionCode,ids);
@ -84,9 +80,6 @@ public class CDADataSetRelationshipManager extends SQLGeneralDAO {
    /**
     * 根据CDAID删除CDA数据集关联关系
     *
     * @param version
     * @param cdaIds
     */
    public void deleteRelationshipByCdaIds(String version, String[] cdaIds) throws IOException {
        List<BaseCDADataSetRelationship> ls = cdaDocumentService.searchPageData(BaseCDADataSetRelationship.class,StandardVersion.CDADatasetTable,version,"cdaId=" + String.join(",", cdaIds),null,null,null);
@ -99,7 +92,6 @@ public class CDADataSetRelationshipManager extends SQLGeneralDAO {
            } else {
                ids += "," + cdaDataSetRelationship.getId();
            }
            //ids += cdaDataSetRelationship.getId();
        }
        deleteByField("id",ids.split(","),StandardVersion.CDADatasetTable,version);
@ -107,13 +99,6 @@ public class CDADataSetRelationshipManager extends SQLGeneralDAO {
    /**
     * 根据CDAID获取关联关系
     *
     * @param entityClass
     * @param filters
     * @param sorts
     * @param size
     * @param page
     * @return
     */
    public List getCDADataSetRelationships(Class entityClass,String version, String filters, String sorts, Integer size, Integer page) {
@ -269,10 +254,7 @@ public class CDADataSetRelationshipManager extends SQLGeneralDAO {
        cdaDocument.setSchema(filePath);
        cdaDocument.setVersionCode(versionCode);
        Result result = cdaDocumentService.modify(versionCode, cdaDocument);
        if(result.isSuccessFlg()){
            return true;
        }
        return false;
        return result.isSuccessFlg();
    }
    public CDADocument saveCdaInfo(String cdaDocumentJsonData) throws Exception {
@ -329,20 +311,12 @@ public class CDADataSetRelationshipManager extends SQLGeneralDAO {
                " 1 = 1 " +
                "AND scdsr.cda_id = '" + cdaId + "' " +
                "AND scdsr.dataset_id = sds.id";
        RowMapper rowMapper = (RowMapper) BeanPropertyRowMapper.newInstance(MCdaDataSet.class);
        return this.jdbcTemplate.query(sql, rowMapper);
        return this.jdbcTemplate.query(sql, BeanPropertyRowMapper.newInstance(MCdaDataSet.class));
    }
    /**
     * 根据CDA Id 和 版本编码 生成CDA文档
     * @param cdaId
     * @param versionCode
     * @return
     * @throws TransformerException
     * @throws ParserConfigurationException
     * @throws FileNotFoundException
     * @throws UnsupportedEncodingException
     */
    public boolean createCDASchemaFile(String cdaId, String versionCode) throws Exception {
        List<CDADataSetRelationship> relationshipsList = getCDADataSetRelationshipByCDAId(CDADataSetRelationship.class,versionCode,cdaId);
@ -377,11 +351,11 @@ public class CDADataSetRelationshipManager extends SQLGeneralDAO {
            //获取数据元
            List<StdMetaDataModel> metaDatas = metaDataService.searchVersionData(StdMetaDataModel.class,StandardVersion.MetaDataTable,versionCode,"dataSetId="+dataSet.getId());
            for (int j = 0; j < metaDatas.size(); j++) {
            for (StdMetaDataModel metaData : metaDatas) {
                Element rowEle = doc.createElement("xs:element");
                rowEle.setAttribute("code", metaDatas.get(j).getCode());
                rowEle.setAttribute("code", metaData.getCode());
                String strColumnType = StringUtils.isEmpty(metaDatas.get(j).getColumnType()) ? "VARCHAR" : metaDatas.get(j).getColumnType();
                String strColumnType = StringUtils.isEmpty(metaData.getColumnType()) ? "VARCHAR" : metaData.getColumnType();
                rowEle.setAttribute("type", "xs:" + strColumnType);
                rowSet.appendChild(rowEle);
@ -400,7 +374,7 @@ public class CDADataSetRelationshipManager extends SQLGeneralDAO {
        transformer.setOutputProperty(OutputKeys.ENCODING, "UTF-8");
        transformer.setOutputProperty(OutputKeys.INDENT, "yes");//设置文档的换行与缩进
        OutputStreamWriter pw = new OutputStreamWriter(new FileOutputStream(fileName), "UTF-8");
        OutputStreamWriter pw = new OutputStreamWriter(new FileOutputStream(fileName), StandardCharsets.UTF_8);
        StreamResult result = new StreamResult(pw);
        transformer.transform(source, result);
    }

+ 2 - 2
svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/service/standard/StandardService.java

@ -40,10 +40,10 @@ public class StandardService extends SQLGeneralDAO {
    public static final String BEAN_ID = "StandardService";
    public ListEnvelop getDictionaryResult(String order, Integer limit, Integer offset) {
    public ListEnvelop getDictionaryResult(String condition,String order, Integer limit, Integer offset) {
        try {
            List<DictItem> detailModelList = new ArrayList<DictItem>();
            List<StandardModel> standardModelList = getList(null, order, limit, offset);
            List<StandardModel> standardModelList = getList(condition, order, limit, offset);
            for (StandardModel standardModel : standardModelList) {
                DictItem items = new DictItem();
                Long id = standardModel.getId();

+ 6 - 9
svr/svr-basic/src/main/java/com/yihu/jw/basic/standard/service/standard/StandardVersionService.java

@ -64,7 +64,7 @@ public class StandardVersionService extends SQLGeneralDAO {
                DictItem items = new DictItem();
                String id = standardVersionModel.getVersion();
                String name = standardVersionModel.getVersionName();
                items.setCode(id.toString());
                items.setCode(id);
                items.setValue(name);
                detailModelList.add(items);
            }
@ -87,7 +87,7 @@ public class StandardVersionService extends SQLGeneralDAO {
                DictItem items = new DictItem();
                String  id = standardVersionModel.getVersion();
                String name = standardVersionModel.getVersionName();
                items.setCode(id.toString());
                items.setCode(id);
                items.setValue(name);
                detailModelList.add(items);
            }
@ -135,10 +135,7 @@ public class StandardVersionService extends SQLGeneralDAO {
            Map<String, String> order = new HashMap<>();
            query.put("versionName", versionName);
            List<StandardVersionModel> list = getList(standardId, query, order, 1, 0);
            if (!CollectionUtils.isEmpty(list)) {
                return true;
            }
            return false;
        return !CollectionUtils.isEmpty(list);
    }
    public Boolean versionNameValidate(Long standardId, Integer versionId, String versionName) throws Exception {
@ -156,8 +153,8 @@ public class StandardVersionService extends SQLGeneralDAO {
    @Transactional
    public Envelop delete(Long versionId, String version) throws Exception {
        Boolean existFlg = false;
        Boolean useredFlg = false;
        boolean existFlg = false;
        boolean useredFlg = false;
        try {
            ObjEnvelop objEnvelop = get(versionId);
            StandardVersionModel versionModel = (StandardVersionModel) objEnvelop.getObj();
@ -284,7 +281,7 @@ public class StandardVersionService extends SQLGeneralDAO {
    private StandardVersionModel myGet(Long versionId) {
        try {
            return (StandardVersionModel) getEntity(StandardVersionModel.class, versionId);
            return getEntity(StandardVersionModel.class, versionId);
        } catch (Exception e) {
            e.printStackTrace();
            return null;

+ 22 - 11
svr/svr-basic/src/main/resources/application.yml

@ -8,24 +8,31 @@ info:
    version: 1.0.0
spring:
  data:
    redis:
      repositories:
        enabled: false
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    max-active: 20
    max-idle: 8
    min-idle: 8
    validation-query: SELECT 1
    test-on-borrow: true
    hikari:
      maximum-pool-size: 200
      minimum-idle: 10
      connection-timeout: 60000 #连接超时时间(毫秒),默认值30秒.
      connection-test-query: SELECT 1
      idle-timeout: 60000 #连接超时时间(毫秒),默认值30秒.
      max-lifetime: 3000000 #连接最大存活时间,默认值30分钟.设置应该比mysql设置的超时时间短
  redis:
    database: 0 # Database index used by the connection factory.
    timeout: 0 # Connection timeout in milliseconds.
    #sentinel:
    #  master: # Name of Redis server.
    #  nodes: # Comma-separated list of host:port pairs.
    pool:
      max-active: 8 # Max number of connections that can be allocated by the pool at a given time. Use a negative value for no limit.
      max-idle: 8 # Max number of "idle" connections in the pool. Use a negative value to indicate an unlimited number of idle connections.
      max-wait: -1 # Maximum amount of time (in milliseconds) a connection allocation should block before throwing an exception when the pool is exhausted. Use a negative value to block indefinitely.
      min-idle: 1 # Target for the minimum number of idle connections to maintain in the pool. This setting only has an effect if it is positive.
    jedis:
      pool:
        max-active: 8 # Max number of connections that can be allocated by the pool at a given time. Use a negative value for no limit.
        max-idle: 8 # Max number of "idle" connections in the pool. Use a negative value to indicate an unlimited number of idle connections.
        max-wait: -1 # Maximum amount of time (in milliseconds) a connection allocation should block before throwing an exception when the pool is exhausted. Use a negative value to block indefinitely.
        min-idle: 1 # Target for the minimum number of idle connections to maintain in the pool. This setting only has an effect if it is positive.
fast-dfs:
  connect-timeout: 10
@ -128,7 +135,6 @@ fz-gateway:
hadoop:
  hbase-properties:
    hbase.zookeeper.quorum: node1.hde.h3c.com,node2.hde.h3c.com,node3.hde.h3c.com
---
spring:
  profiles: mlwTest
@ -207,3 +213,8 @@ express:
im:
  im_list_get: http://172.26.0.105:3000/
  data_base_name: im_internet_hospital
#消息队列
activemq:
  username: admin
  password: admin
  url: tcp://172.26.0.116:61616

+ 2 - 7
svr/svr-statistics-es/pom.xml

@ -4,7 +4,7 @@
    <parent>
        <groupId>com.yihu.jw</groupId>
        <artifactId>wlyy-parent-pom</artifactId>
        <version>2.0.0</version>
        <version>2.4.0</version>
        <relativePath>../../wlyy-parent-pom/pom.xml</relativePath>
    </parent>
    <groupId>com.yihu.jw</groupId>
@ -27,9 +27,6 @@
        <version.commons-io>2.4</version.commons-io>
        <version.commons-lang3>3.2.1</version.commons-lang3>
        <version.commons-pool2>2.4.2</version.commons-pool2>
        <version.hibernate>5.0.12.Final</version.hibernate>
        <version.hibernate-annotations>4.0.5.Final</version.hibernate-annotations>
        <version.hibernate-jpa-api>1.0.0.Final</version.hibernate-jpa-api>
        <version.http-client>4.5.3</version.http-client>
        <version.http-core>4.4.8</version.http-core>
        <version.java>1.8</version.java>
@ -40,8 +37,6 @@
        <version.joda-time>2.8.2</version.joda-time>
        <version.junit>4.12</version.junit>
        <version.logback>1.2.3</version.logback>
        <version.mysql>8.0.23</version.mysql>
        <version.quartz>2.2.3</version.quartz>
        <version.servlet-api>3.1.0</version.servlet-api>
        <version.slf4j>1.7.21</version.slf4j>
        <version.tomcat-embed>8.0.28</version.tomcat-embed>
@ -53,7 +48,7 @@
        <dependency>
            <groupId>com.yihu.jw</groupId>
            <artifactId>common-entity</artifactId>
            <version>2.0.0</version>
            <version>${version.wlyy-common}</version>
        </dependency>
        <!--Jackson library-->
        <dependency>