O2OA API

Module

queryView

queryView对象可在视图中可用。它的很多方法与form类似。(仅前端脚本可用)

Usable Range

QueryView

Syntax

//您可以在视图中,通过this来获取queryView对象,如下:
var queryView = this.queryView;

Source

Methods

static

getParentEnvironment() → {MWF.xScript.Environment|MWF.xScript.CMSEnvironment}

当视图被嵌入到门户页面、流程表单或内容管理表单的时候,可以在视图可以写脚本的地方中通过这个方法来获取页面或表单的上下文。

Syntax

this.queryView.getParentEnvironment();

Returns

  • MWF.xScript.Environment MWF.xScript.CMSEnvironment

    页面或表单的上下文.

Example

var env = this.queryView.getParentEnvironment(); //当视图被嵌入到页面的时候,可以在视图里获取页面的上下文
env.page.toPortal( "公文门户" ); //调用page的toPage() 跳转到其他门户

Source

static

getViewInfor() → {Object}

获取查询的配置信息。

Syntax

this.queryView.getViewInfor();

Returns

  • Object

    视图的配置信息.

    {
         "application": "db9fc893-7dbc-4e0f-a617-99089d2c6323", //视图所在应用
         "query": "db9fc893-7dbc-4e0f-a617-99089d2c6323",  //视图所在应用,同application
         "name": "视图自定义测试", //视图名称
         "viewName": "视图自定义测试",  //视图名称,同name
         "isExpand": "no",  //如果有分类,默认是否展开开
         "id": "705ce967-2f9c-425c-8873-3bd729249e1d", //视图id
         "alias": "", //视图别名
         "description": "",  //视图描述
         "display": true, //视图是否显示
         "type": "cms", //视图嵌入的数据类型, cms 或 process
         "count": 2000, //最多返回2000条
         "pageSize": 20, //每页的条数
         "createTime": "2019-09-02 10:18:27",
         "updateTime": "2020-03-26 15:53:03"
    }

Source

static

getPageInfor() → {Object}

获取视图当前页的基本信息。

Syntax

this.queryView.getPageInfor();

Returns

  • Object

    当前页的信息,格式如下:

    {
        "pages": 3, //总页数
        "perPageCount": 50, //每页的条数
        "currentPageNumber": 1 // 当前页数
    }
    

Source

static

getPageData() → {Array.<Object>}

获取当前页的数据。

Syntax

var data = this.queryView.getPageData();

Returns

  • Array.<Object>

    当前页数据。

    没有分类时候,数据格式如下:
    [
      {
          "bundle": "099ed3c9-dfbc-4094-a8b7-5bfd6c5f7070", //cms 的 documentId, process 的 jobId
         "data": {  //视图中配置的数据
           "title": "考勤管理-配置-统计周期设置", //列名称及列值
           "time": "2018-08-25 11:29:45"
         }
       },
      ...
    ]
    
    有分类的时候,数据格式如下:
    [
     {
      "group": "工作日志",  //分类1
      "list": [  //分类下的数据
        {
          "bundle": "001257be-725a-43cf-9679-3892bbab696a", //cms 的 documentId, process 的 jobId
          "data": { //视图中配置的数据
            "title": "标题",  //列名称及列值
            "time": "2018-07-31 15:39:13",
            "category": "工作日志"
          }
        },
        ...
      ]
     },
     ...
    ]
    

Source

static

toPage(pageNumber, callbackopt)

跳转到指定的页面。

Syntax

var data = this.queryView.toPage( pageNumber, callback );

Parameters

  • pageNumber Number

    需要跳转的页码。

  • callback function <optional>

    跳转的页面数据加载完成以后的回调方法。

Example

// 跳转到第2页并且获取该页的数据。
this.queryView.toPage( 2, function(){
     var data = this.queryView.getPageData();
}.bind(this) )

Source

static

getSelectedData() → {Array.<Object>}

获取选中的条目的数据。

Syntax

var data = this.queryView.getSelectedData();

Returns

  • Array.<Object>

    选中的条目的数据。

    格式如下:
    
    [
             {
                "bundle": "099ed3c9-dfbc-4094-a8b7-5bfd6c5f7070", //cms 的 documentId, process 的 jobId
                "data": {  //视图中配置的数据
                  "title": "考勤管理-配置-统计周期设置", //列名称及列值
                  "time": "2018-08-25 11:29:45"
                }
              },
             ...
    ]
             

Source

static

setFilter(filteropt, callbackopt)

设置视图的过滤条件,该方法不能修改视图中默认的过滤条件(在开发视图的时候添加的过滤条件),而是在这上面新增。

Syntax

this.queryView.setFilter( filter );

Parameters

  • filter Array.<ViewFilter> | ViewFilter | Null <optional>

    过滤条件。
    当不传参数、参数为null或为空数组的情况下,表示清空非视图默认的过滤条件。
    如果传入对象或者非空数组的时候,参数如下:

    [
       {
          "logic":"and",
          "path":"$work.title",
          "comparison":"like",
          "value":"7月",
          "formatType":"textValue"
      }
    ]
    
  • callback function <optional>

    过滤完成并重新加载数据后的回调方法。

Source

static

switchView(options)

把当前视图切换成另外一个视图。

Syntax

this.queryView.switchView( options );

Parameters

  • options Object

    需要跳转的参数配置。参数说明如下:

    下列说明的filter属性参考ViewFilter
    {
        "application": application, //必选,视图的所在应用id
        "viewName": viewName, //必选,视图的名称
        "filter": [
            {
               "logic":"and",
                "path":"$work.title",
                "comparison":"like",
                "value":"7月",
                "formatType":"textValue"
            }
        ], //可选,增加视图的过滤条件(ViewFilter),如果不传,则使用原视图的配置;如果需要去掉原视图的配置,则传入空数组 []
        "isTitle": "yes", //可选,是否显示t视图的标题行,可选值有:yes no
        "select": "none", //可选,是否允许新视图选择,如果不传,则使用原视图的配置, 可选值有: 不允许选择 none, 单选 single,多选 multi
        "titleStyles": {
          "color" : "red",
          "font-size" : "14px"
        }, //可选,标题行样式,如果不传,则使用原视图的配置
        "itemStyles": {
          "color" : "#333",
          "font-size" : "12px"
        }, //可选,内容行样式,如果不传,则使用原视图的配置
        "isExpand": "no", //可选,默认是否展开分类,如果不传,则使用原视图的配置, 可选值有:yes no
      }
    

Source

static

getSelectedData() → {Array.<Object>}

获取选中的条目的数据。

Syntax

var data = this.target.getSelectedData();

Returns

  • Array.<Object>

    选中的条目的数据。

    格式如下:
    
    [
         {
            "bundle": "099ed3c9-dfbc-4094-a8b7-5bfd6c5f7070", //cms 的 documentId, process 的 jobId
            "data": {  //视图中配置的数据
              "title": "考勤管理-配置-统计周期设置", //列名称及列值
              "time": "2018-08-25 11:29:45"
            }
          },
         ...
    ]
         

Source

results matching

    No results matching ''