精确匹配

1.基本功能 1.基本功能

精确匹配控件是为了提高业务作业上的全匹配查询的效率,通过ES搜索引擎中进行全匹配查询,然后把查询到的列表做为数据库精确查询的条件。
效果:在输入框内输入数据,然后勾选精确匹配复选框,模糊查询后回填数据到输入框。
精确匹配
精确匹配1

备注:

  • 该控件类型只能使用在查询表单上。
  • 目前平台的运行期动态配置中还不支持这种控件类型。
  • 云平台版本至少是6.7.2.0 以上支持该功能。
  • 2.配置方法 2.配置方法

    配置

    1.对象建模–业务对象–业务对象管理:编辑业务对象-点击【可视化布局】按钮,进入到可视化界面。
    2.选择属性,在右侧属性列表处将其【控件类型】修改为【多行精确查询】,或者直接从左侧基础控件中直接拖拽【精确匹配】,这两种方式是一样的;然后配置以下几个参数:
    【最大返回数】:最大返回数据笔数限制
    【查询名称】:查询数据源名称,可以到全文搜索管理界面上,找到对应的数据源业务对象名称;
    【字段名称】:指数据源具体用来查询的字段名称;
    【查询URL】:查询数据请求路径
    【操作符】:一般使用包含;
    QQ截图20201028170027
    3. 在config.properties 中配置全局的数据源查询请求、复选框名称及返回数据笔数限制;可视化布局上配置的是针对个体的,用户自行选择

    //在 controls 节点下,新增 exactMatching
     controls:{
            exactMatching:{
                //全局的查询数据请求路径
                queryUrl:'/search/store/queryMatching',
                checkboxLabel:'精确匹配',
                //最大返回数据笔数限制
                limitCount:100
            },
    

    注意:

  • 这里使用数据源是使用全文搜索,所以Nginx也要加全文搜索服务的路径。
  • QQ截图20201028173241

    代码

    html中生成关于精确匹配控件代码:

      <g-exact-matching id="quickSearchF0000000.remark" name="quickSearchF0000000.remark" ng-model="quickSearchF0000000.remark" rows="3" limit-count="3" query-name="CdmVessel" field-name="vesselName" >
        </g-exact-matching>
    
    

    3.常用扩展 3.常用扩展

    4.版本更新 4.版本更新

    6.6.1,2020.07.06

    优化

  • 多行文本精确匹配查询,支持识别特殊字符:-,/,%,&,?这几个符号
  • 6.4.1,2020.05.24

    优化

  • 支持ES查询,在原来云平台的 Search.war 搜索帮助的全文搜索引擎中新增一个接口,专门用来处理 【精确查询】搜索。
  • 6.3.3,2020.04.30

    新特性

  • 支持多行文本精确匹配控件类型,用于查询条件使用。