任欢
Published on 2026-09-15 / 16 Visits
0
0

jsapi 标准 query 接口构造连表查询条件示例

标准的 query 接口是直接调用原子服务的query方法,透传queryWrapper作为查询参数,例如以下包装规则的分页查询接口。

在早期开发过程中,为了适配前端开发需求,部分query接口被魔改,以无法完整透传queryWrapper为代价实现部分功能。

但实际上前端可以直接传入queryWrapper对象json,无需对接口进行深度改造。

以下是以工装型号表isBarcodeControl为条件,构造连表json以实现条码类工装台账查询目的的参数示例:

{
  "limitOffset": 0,
  "limitRows": 10,
  "joinTables": [
    { "name": "mdm_tooling_model" }
  ],
  "joins": [
    {
      "type": " INNER JOIN ",
      "queryTable": { "name": "mdm_tooling_model" },
      "on": {
        "content": "mdm_tooling.tooling_model_id = mdm_tooling_model.id"
      }
    }
  ],
  "whereQueryCondition": {
    "effective": true,
    "column": {
      "name": "isBarcodeControl",
      "table": { "name": "mdm_tooling_model" }
    },
    "logic": " = ",
    "value": "Y"
  }
}

joinTables 为必须参数,不加则会与框架自动添加的del_flag 条件冲突。

其中,joins.type 接受以下值:

  • " INNER JOIN "

  • " LEFT JOIN "

  • " RIGHT JOIN "

  • " FULL JOIN "

  • " CROSS JOIN "

  • " JOIN "

" FULL JOIN " 一般在mysql中不可用。


Comment