Parcourir la source

Merge branch 'master' of http://192.168.1.220:10080/EHR/commons

suxiaoyang il y a 6 ans
Parent
commit
3cc60034ab

+ 3 - 0
README.md

@ -0,0 +1,3 @@
# commons
EHR平台的基础类库。
所有类库需要基于该类库进行编写

+ 4 - 0
commons-cat/pom.xml

@ -43,5 +43,9 @@
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
        </dependency>
      	<dependency>
            <groupId>io.netty</groupId>
            <artifactId>netty-all</artifactId>
        </dependency>
    </dependencies>
</project>

+ 45 - 0
commons-data-solr/src/main/java/com/yihu/ehr/solr/SolrUtil.java

@ -359,6 +359,51 @@ public class SolrUtil {
    }
    /**
     * 单组分组Count统计(start从0开始),筛选出聚合值>=groupCount
     *
     * @param core       core名
     * @param q          查询条件
     * @param fq         筛选条件
     * @param groupField 分组字段名
     * @param start      起始偏移位
     * @param limit      结果条数,为负数则不限制
     * @param groupCount 聚合值
     */
    public Map<String, Long> groupCountLte(String core, String q, String fq, String groupField, int start, int limit, int groupCount) throws Exception {
        SolrClient conn = pool.getConnection(core);
        SolrQuery query = new SolrQuery();
        if (null != q && !q.equals("")) {
            query.setQuery(q);
        } else {
            query.setQuery("*:*");
        }
        if (null != fq && !fq.equals("")) {
            query.setFilterQueries(fq);
        }
        //设置facet=on
        query.setFacet(true);
        query.setRows(0);
        query.addFacetField(groupField);
        //限制每次返回结果数
        query.setFacetLimit(limit);
        query.set(FacetParams.FACET_OFFSET, start);
        //不统计null的值
        query.setFacetMissing(false);
        // 设置返回的数据中每个分组的数据最小值,比如设置为0,则统计数量最小为0,不然不显示
        query.setFacetMinCount(0);
        QueryResponse rsp = conn.query(query);
        List<FacetField.Count> countList = rsp.getFacetField(groupField).getValues();
        Map<String, Long> rmap = new HashMap<>();
        for (FacetField.Count count : countList) {
            if (count.getCount() >= groupCount) {
                rmap.put(count.getName(), (long) count.getCount());
            }
        }
        return rmap;
    }
    /**
     * 多组分组Count(独立计算)
     *

+ 7 - 0
ehr-cloud-parent/pom.xml

@ -139,6 +139,7 @@
        <version.spring.boot.admin>1.5.7</version.spring.boot.admin>
        <version.jettison>1.3.7</version.jettison>
        <version.springside>4.2.3-GA</version.springside>
        <version.netty>4.0.24.Final</version.netty>
        <!-- eip -->
        <mine-util-version>2.1.3</mine-util-version>
        <sigar-version>1.6.4</sigar-version>
@ -813,6 +814,12 @@
                <artifactId>hos-web-framework</artifactId>
                <version>${hos-version}</version>
            </dependency>
          
          	<dependency>
                <groupId>io.netty</groupId>
                <artifactId>netty-all</artifactId>
                <version>${version.netty}</version>
            </dependency>
        </dependencies>
    </dependencyManagement>

+ 1 - 1
hos-web-framework/pom.xml

@ -7,7 +7,7 @@
    <parent>
        <groupId>com.yihu.ehr</groupId>
        <artifactId>ehr-cloud-parent</artifactId>
        <version>1.13.1</version>
        <version>1.13.0</version>
        <relativePath>../ehr-cloud-parent/pom.xml</relativePath>
    </parent>