mirror of
https://gitee.com/yudaocode/yudao-boot-mini.git
synced 2026-10-06 14:13:14 +08:00
fix(crm):回款计划创建查最大期次改单表查询,修 Unknown column 't.contract_id'(A6)
MPJLambdaWrapperX 会给列拼表别名前缀 t.,但 BaseMapper.selectOne 生成的 FROM 不带别名,单表查询直接 SQL 语法错误(2026-09-21 23:50:39 实抓堆栈: CrmReceivablePlanMapper.selectMaxPeriodByContractId:27 → createReceivablePlan:65 → 500 系统异常)。同文件 selectCount+MPJ 走 MPJ 自带 FROM 别名不受影响, 仅 selectOne 路径改 LambdaQueryWrapperX。
This commit is contained in:
+4
-1
@@ -3,6 +3,7 @@ package cn.iocoder.yudao.module.crm.dal.mysql.receivable;
|
||||
import cn.hutool.core.date.LocalDateTimeUtil;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.query.MPJLambdaWrapperX;
|
||||
import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.plan.CrmReceivablePlanPageReqVO;
|
||||
import cn.iocoder.yudao.module.crm.dal.dataobject.contract.CrmContractDO;
|
||||
@@ -24,7 +25,9 @@ import java.util.Objects;
|
||||
public interface CrmReceivablePlanMapper extends BaseMapperX<CrmReceivablePlanDO> {
|
||||
|
||||
default CrmReceivablePlanDO selectMaxPeriodByContractId(Long contractId) {
|
||||
return selectOne(new MPJLambdaWrapperX<CrmReceivablePlanDO>()
|
||||
// 单表查询不能用 MPJLambdaWrapperX:它会给列拼接表别名前缀(t.contract_id),
|
||||
// 但 selectOne 生成的 FROM 不带别名,导致 Unknown column 't.contract_id'。
|
||||
return selectOne(new LambdaQueryWrapperX<CrmReceivablePlanDO>()
|
||||
.eq(CrmReceivablePlanDO::getContractId, contractId)
|
||||
.orderByDesc(CrmReceivablePlanDO::getPeriod)
|
||||
.last("LIMIT 1"));
|
||||
|
||||
Reference in New Issue
Block a user