【发布时间】:2022-09-25 19:33:39
【问题描述】:
这是我的代码:
const query = this.requestRepository
.createQueryBuilder(\'request\')
.leftJoinAndMapMany(
\'request.approvers\',
RequestApprover,
\'approvers\',
\'request.id = approvers.requestId\',
);
这是我从查询中获得的数据:
\"requests\":
[
{
\"id\": \"8ceee413-521c-4e21-a75b-27048d184804\",
\"status\": \"waiting\",
\"reason\": \"1\",
\"approvers\": [
{
\"id\": \"04946109-ba35-4c08-a469-761023f33b3c\",
\"employeeCode\": \"EMP001\",
\"status\": \"waiting\",
},
{
\"id\": \"a9dec055-e237-434c-897e-d877f64df4af\",
\"employeeCode\": \"EMP002\",
\"status\": \"approved\",
}
]
}
]
问题是当我添加条件以获取已被员工 EMP 002 批准的所有请求时
query.andWhere(`approvers.employeeCode = \'EMP002\'`)
缺少批准人[0]。我知道这是正确的,但我想知道是否有办法获得完整的批准者,但仍然可以获得 EMP002 是批准者的请求。感谢您的关注。