文档首页/ Astro轻应用 AstroZero/ 最佳实践/ 高级页面专项/ 在AstroZero高级页面中使用花瓣图展示订单数据
更新时间:2024-10-09 GMT+08:00
分享

在AstroZero高级页面中使用花瓣图展示订单数据

期望实现效果

高级页面中组件展示的数据除了系统预置的静态数据之外,还支持动态数据,即通过调用脚本、服务编排或对象等接口动态生成的数据。例如,将玫瑰花饼图的数据修改为订单对象中的数据。

图1 实现效果

功能实现方法

  1. 在应用设计器中,选择“界面”,单击高级页面后的“+”,新建一个高级页面。
  2. 单击,从“图表 > 饼图”中拖拽widget_demo_mintui组件到右侧画布中。

    图2 拖入一个玫瑰花饼图

  3. 选中玫瑰花饼图,在“数据”中查看该组件对应的数据格式。

    图3 查看数据格式

  4. 新建一个productList对象,并为对象添加字段和数据。

    1. 在应用设计器的左侧导航栏中,选择“数据”,单击对象中的“+”
    2. 设置对象的名称和唯一标识为“productList”,单击“确定”
      图4 创建对象productList
    3. 在已创建的对象中,单击,进入对象详情页面。
    4. “字段”页签,单击“添加”,为对象添加productName字段。
      图5 添加productName字段
      表1 添加productName字段参数说明

      参数

      说明

      示例

      显示名称

      新建字段的名称,创建后可修改。

      取值范围:1~63个字符。

      productName

      唯一标识

      新建字段在系统中的标识,创建后不支持修改。命名要求如下:

      • 长度不能超过63个字符,包括前缀命名空间的长度。
      • 必须以英文字母开头,只能由英文字母,数字和单下划线组成,且不能以下划线结尾。

      productName

      字段类型

      单击,在弹出的页面中,根据页面提供的参数解释,选择新建字段所属的类型。

      文本

    5. “字段”页签,再次单击“添加”按钮,添加productNumber字段。
      图6 添加productNumber字段
    6. “数据”页签,单击“添加”,为对象添加数据。
      图7 为对象添加数据

  5. 创建读取对象数据的脚本。

    1. 在应用设计器的左侧导航栏中,选择“逻辑”,单击脚本中的“+”
    2. 创建一个空白脚本,名称为getDataInfo。
      图8 创建脚本getDataInfo
    3. 在脚本编辑器中,输入如下代码实例。
      示例中的“BJ4”为命名空间,请替换为您所创建的命名空间。
      // Here's your code.
      import * as db from 'db';
      @useObject(['BJ4__productList__CST'])
      @action.object({ type: 'method' })
      export class SearchScript {
          @action.method({ input: 'ParamsInput', output: 'ParamsOutput' })
          public run(): Object[] {
              let queryData = this.doSearchScript();
              let result: Array<Object> = [];
              result.push({
                  dataValue: [{
                      name: "订单数",
                      value: queryData
                  }]
              });
              console.log("result", result)
              return result;
          }
          private doSearchScript(): Object[] {
              let sql = "select BJ4__productName__CST as name,BJ4__productNumber__CST as value"
                  + " from BJ4__productList__CST"
              let query = db.sql().exec(sql)
              return query;
          }
      }
    4. 单击,保存脚本,保存成功后单击,激活脚本。

  6. 新建开放接口。

    1. 在应用设计器中,选择“集成”
    2. 单击开放接口后的“+”,设置开放接口参数。
      图9 设置开放接口参数
      表2 新建接口参数说明

      参数

      说明

      示例

      操作名称

      新建接口的操作名称。命名要求如下:

      • 取值范围:1~40个字符。
      • 必须以英文字母开头,只能由英文字母,数字和单下划线组成,且不能以下划线结尾。

      showDataInfo

      版本

      URL对应的版本号。

      1.0.0

      URL

      新URL地址,其中“/service”是固定值,其次是“/App名称/版本号”,剩下部分请自定义。

      /showDataInfo

      类型

      选择新建接口的类型。

      脚本

      资源

      选择接口调用的脚本。

      选择5中创建的脚本

      方法

      映射后调用的方法名。

      POST

    3. 设置完成后,单击“保存”,进入接口详情页。
    4. 在接口信息中,单击URL后的,复制URL。
      图10 复制URL

  7. 返回高级页面,选中“玫瑰花饼图”,在“数据”页签,设置数据桥接器。

    “桥接器实例”选择“饼图数据桥接器”“数据类型”选择“动态数据”“URL”设置为6.d中获取的URL。
    图11 设置组件数据

  8. 在玫瑰花饼图组件上,单击右键选择“高级设置”,设置组件标题,字体大小等。

    图12 设置组件标题

  9. 单击,保存高级页面,保存成功后单击,发布高级页面。
  10. 发布成功后,单击,预览效果。

相关文档