gaoluyang
9 天以前 cdaec80a5ffa474f69e5c36f0312be3c0abf2210
yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/dal/mysql/receivable/CrmReceivablePlanMapper.java
@@ -18,10 +18,20 @@
/**
 * 回款计划 Mapper
 *
 * @author 芋道源码
 * @author 超级管理员
 */
@Mapper
public interface CrmReceivablePlanMapper extends BaseMapperX<CrmReceivablePlanDO> {
    /**
     * 查询开票单生成的收款节点
     */
    default java.util.List<CrmReceivablePlanDO> selectListByInvoiceId(Long invoiceId) {
        return selectList(new cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX<CrmReceivablePlanDO>()
                .eq(CrmReceivablePlanDO::getInvoiceId, invoiceId)
                .orderByAsc(CrmReceivablePlanDO::getStage)
                .orderByAsc(CrmReceivablePlanDO::getId));
    }
    default CrmReceivablePlanDO selectMaxPeriodByContractId(Long contractId) {
        return selectOne(new MPJLambdaWrapperX<CrmReceivablePlanDO>()
@@ -78,11 +88,10 @@
        // 我负责的 + 非公海
        CrmPermissionUtils.appendPermissionCondition(query, CrmBizTypeEnum.CRM_RECEIVABLE_PLAN.getType(),
                CrmReceivablePlanDO::getId, userId, CrmSceneTypeEnum.OWNER.getType());
        // 未回款 + 已逾期 + 今天开始提醒
        // 与待回款提醒列表一致:未回款,且已到提醒日期,不要求已经逾期。
        LocalDateTime beginOfToday = LocalDateTimeUtil.beginOfDay(LocalDateTime.now());
        query.isNull(CrmReceivablePlanDO::getReceivableId) // 未回款
                .lt(CrmReceivablePlanDO::getReturnTime, beginOfToday) // 已逾期
                .lt(CrmReceivablePlanDO::getRemindTime, beginOfToday); // 今天开始提醒
                .le(CrmReceivablePlanDO::getRemindTime, beginOfToday); // 包含今天开始提醒
        return selectCount(query);
    }