package com.malk.service.customer; import com.malk.server.customer.CustomerEnrichRequest; import com.malk.server.customer.CustomerEnrichResult; import com.malk.server.customer.CustomerSearchResult; /** * 客户档案工商信息查询与字段映射服务。 */ public interface CustomerEnrichService { /** * 查询是否存在同名的有效客户流程。 * * @param companyName 正式企业名称 * @param currentProcessInstanceId 当前流程实例 ID,可空 * @return 是否存在其他运行中或审批通过的同名流程 */ boolean hasDuplicateCustomer(String companyName, String currentProcessInstanceId); /** * 搜索工商候选企业,不自动选择候选。 * * @param customerName 客户名称关键词 * @param pageNum 页码 * @param pageSize 每页数量 * @return 候选列表 */ CustomerSearchResult search(String customerName, Integer pageNum, Integer pageSize); /** * 按天眼查企业 ID 查询详情并生成回填字段。 * * @param companyId 天眼查企业 ID * @param existingValues 宜搭现有字段值 * @return 工商详情及回填计划 */ CustomerEnrichResult detail(Long companyId, java.util.Map existingValues); /** * 兼容旧回填入口,按 ID、信用代码或严格一致的企业名称查询。 * * @param request 回填请求 * @return 工商详情及回填计划 */ CustomerEnrichResult enrich(CustomerEnrichRequest request); }