package com.hdkj.lt.bf.mapper;

import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.hdkj.lt.bf.entity.dto.FhzgPlanTransferSchemeSwitchingSequenceAndPathDTO;
import com.hdkj.lt.core.bizms.modle.dto.FhzgPlanTransferSchemePathDetailDTO;
import com.hdkj.lt.core.bizms.modle.po.plan.FhzgPlanTransferScheme;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;


/**
 * @author luorui
 * @date 2025/5/15 17:43
 * 转供路径明细查询
 */
@Mapper
public interface FhzgPlanTransferSchemePathDetailMapper {

    /**
     * 根据组合方案id查询转供路径
     */

    Page<FhzgPlanTransferSchemePathDetailDTO> getTransferSchemePathDetailBySchemeId(Page<FhzgPlanTransferScheme> page, @Param("params") FhzgPlanTransferScheme fhzgPlanTransferScheme);

    Page<FhzgPlanTransferSchemeSwitchingSequenceAndPathDTO> getTransferSchemePathAndSwitchById(Page<FhzgPlanTransferScheme> page, @Param("params") FhzgPlanTransferScheme fhzgPlanTransferScheme);

    /**
     * 根据组合方案id查询全部转供路径
     */
    List<FhzgPlanTransferSchemePathDetailDTO> getTransferSchemePathDetailByCombinationSchemeId(FhzgPlanTransferScheme fhzgPlanTransferScheme);


    FhzgPlanTransferSchemePathDetailDTO getTotalSwitchSectionLoads(FhzgPlanTransferScheme fhzgPlanTransferScheme);

    FhzgPlanTransferSchemePathDetailDTO getTotalSwitchSectionTransfer(FhzgPlanTransferScheme fhzgPlanTransferScheme);

    /**
     * 根据方案ID查询母线信息
     */
    List<JSONObject> getFeederBusbarBySchemeId(Long schemeId, List<String> kgPsrTypes);
}
