package com.ruoyi.ccdi.project.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.ccdi.project.domain.dto.CcdiFundGraphEdgeDetailQueryDTO;
import com.ruoyi.ccdi.project.domain.dto.CcdiFundGraphManualEdgeSaveDTO;
import com.ruoyi.ccdi.project.domain.dto.CcdiFundGraphQueryDTO;
import com.ruoyi.ccdi.project.domain.vo.CcdiFundGraphEdgeVO;
import com.ruoyi.ccdi.project.domain.vo.CcdiFundGraphNodeVO;
import com.ruoyi.ccdi.project.domain.vo.CcdiFundGraphStatementVO;
import com.ruoyi.ccdi.project.domain.vo.CcdiFundGraphVO;

import java.util.List;

/**
 * 资金流图谱Service接口
 */
public interface ICcdiFundGraphService {

    List<CcdiFundGraphNodeVO> searchSubjects(CcdiFundGraphQueryDTO queryDTO);

    CcdiFundGraphVO getFundGraph(CcdiFundGraphQueryDTO queryDTO);

    Page<CcdiFundGraphStatementVO> getEdgeDetails(
        Page<CcdiFundGraphStatementVO> page,
        CcdiFundGraphEdgeDetailQueryDTO queryDTO
    );

    CcdiFundGraphEdgeVO saveManualEdge(CcdiFundGraphManualEdgeSaveDTO saveDTO, String operator);
}
