xiaoyi
6 天以前 9daeb6eac6e46710055e625bbbd56331b8890e21
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/pro/mps/MesProMpsMapper.java
@@ -63,6 +63,19 @@
        return selectOne(MesProMpsDO::getCode, code);
    }
    /**
     * 按工单查询 MPS。
     *
     * 合并下发时多个 MPS 会指向同一个工单,因此这里必须限制只取一条,
     * 否则 MyBatis-Plus 的 selectOne 会抛 TooManyResultsException,导致报工无法完工。
     */
    default MesProMpsDO selectByWorkOrderId(Long workOrderId) {
        return selectOne(new LambdaQueryWrapperX<MesProMpsDO>()
                .eq(MesProMpsDO::getWorkOrderId, workOrderId)
                .orderByDesc(MesProMpsDO::getId)
                .last("LIMIT 1"));
    }
    default MesProMpsDO selectBySaleOrderItemId(Long saleOrderItemId) {
        return selectOne(new LambdaQueryWrapperX<MesProMpsDO>()
                .eq(MesProMpsDO::getSaleOrderItemId, saleOrderItemId)