Files
klp-oa/klp-erp/src/main/java/com/klp/erp/mapper/ErpPurchasePlanMapper.java

48 lines
1.6 KiB
Java
Raw Normal View History

package com.klp.erp.mapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.klp.common.core.mapper.BaseMapperPlus;
import com.klp.erp.domain.ErpPurchasePlan;
import com.klp.erp.domain.vo.ErpContractOptionVo;
import com.klp.erp.domain.vo.ErpPurchasePlanItemVo;
import com.klp.erp.domain.vo.ErpPurchasePlanVo;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 采购计划头Mapper接口
*
* @author klp
* @date 2026-06-22
*/
public interface ErpPurchasePlanMapper extends BaseMapperPlus<ErpPurchasePlanMapper, ErpPurchasePlan, ErpPurchasePlanVo> {
/**
* 根据销售合同ID查询合同编号crm_order同库跨表
*/
List<String> selectOrderCodes(@Param("ids") List<Long> ids);
/**
* 按销售合同ID批量取明细映射为采购计划明细来自 crm_order_item
* 用于选合同自动带出明细1/2/3合同 -> 1/2/3/4明细
*/
List<ErpPurchasePlanItemVo> selectItemsByOrderIds(@Param("ids") List<Long> ids);
/**
* 合同列表分页crm_order + 该合同已挂接的采购计划数
*/
Page<ErpContractOptionVo> selectContractPage(IPage<ErpContractOptionVo> page, @Param("kw") String kw);
/**
* 某合同下的所有采购计划经中间表挂接
*/
List<ErpPurchasePlanVo> selectPlansByContract(@Param("orderId") Long orderId);
/**
* 按合同关键字订单编号/合同号/合同名称查出关联的采购计划ID用于综合搜索
*/
List<Long> selectPlanIdsByContractKeyword(@Param("kw") String kw);
}