{
  // 查询的主表名称和别名
  "tableName": "t_userfiles uf",
  // 查询中可能用到的关联表集合
  "joinArray": {
    // 关联表的别名 : 关联主表的SQL
    "ua": "t_user_address ua on uf.f_useraddress_id = ua.id",
    "ui": "t_userinfo ui on uf.f_userinfo_id = ui.f_userinfo_id",
    "gb": "t_gasbrand gb on uf.f_gasbrand_id = gb.id"
  },
  // 固定查询条件，可选，用作查询时追加固定的查询条件
  "condition": {
    // 用到的关联表集合，使用固定查询条件时，如果用到了关联表，需要指明用到的joinArray中的关联表别名
    "join": ["gb"],
    // 查询条件表达式，标准SQL语句
    "value": "gb.f_meter_type = '物联网表'"
  },
  // 排序方式(用于分页)
  "orderBy": "uf.f_userfiles_id desc",
  // 数据列
  "column": [
    {
      // 数据列名，必填，用作查询时必须遵守 表别名.列名 的格式
      "key": "ui.f_userinfo_code",
      // 中文解释，必填
      "title": "用户编号",
      // 数据模式，可选，具体类型参数com.aote.queryparams.DataModeEnum
      "dataMode": "all",
      // 表单查询方式，用于表单时可选，默认为=, 具体类型参考com.aote.queryparams.QueryTypeEnum
      "queryType": "=",
      // 表单类型，用于表单时可选，默认为input，具体类型参数com.aote.queryparams.FormTypeEnum
      "formType": "input",
      // 选项集合key，当formType为select时可选，通过该值作为参数字典表的key值获取选项列表，
      // 该值也可以是一个array类型，用于生成固定的选择列表
      "selectKey": "instructTypeMap" || [{"params1","参数1"},{"params2","参数2"}],
      // 表单水印提示，用于表单时可选
      "placeholder": "请选择",
      // 表单校验类型，用于表单时可选，required为是否必选，type默认为string，具体类型参考com.aote.queryparams.RuleTypeEnum
      "rule": { required: true, type: 'number' }
      // 默认值，用于生成SQL查询项时可选，当查询字段结果为null时，指定一个默认值
      "default": "未知",
      // 表格列插槽，用于表格列时可选，如果没有指定，默认会设置一个文本溢出省略(length:16)
      "slot": {
        "type": "badge",
        "keyMap": "instructStateMap",
        "value": "30"
      },
      // 表格列宽度，用于表格展示时可选
      // 当slot设置为ellipsis时，自适应宽度为ellipsis的value * 7 + 10 + 32；为dateTime时，宽度为160）
      // 当该列数据过长导致换行时，建议设置slot为ellipsis或设置固定的宽度
      "width": 100,
      // 固定表格列，用于表格展示时可选，具体类型参考com.aote.queryparams.ColumnFixedTypeEnum
      "fixed": "true"
    }
  ]
}
