package cn.iocoder.lyzsys.module.tjt.service.planningguidedetail;

import cn.iocoder.lyzsys.module.tjt.controller.admin.planningguidedetail.vo.ProjectPlanningGuideDetailBatchSaveReqVO;
import cn.iocoder.lyzsys.module.tjt.dal.dataobject.planning.ProjectPlanningDO;
import cn.iocoder.lyzsys.module.tjt.dal.dataobject.planningguidedetail.ProjectPlanningGuideDetailDO;

import java.util.Collection;
import java.util.List;
import java.util.Map;

public interface ProjectPlanningGuideDetailService {

    void batchSaveProjectPlanningGuideDetail(ProjectPlanningGuideDetailBatchSaveReqVO reqVO);

    void deleteProjectPlanningGuideDetail(Long id);

    List<ProjectPlanningGuideDetailDO> getProjectPlanningGuideDetailListByPlanningId(Long planningId);

    Map<Long, List<ProjectPlanningGuideDetailDO>> getProjectPlanningGuideDetailMapByPlanningIds(Collection<Long> planningIds);

    void deleteByPlanningId(Long planningId);

    void deleteByPlanningIds(Collection<Long> planningIds);

    void handlePlanningSaved(ProjectPlanningDO planning, ProjectPlanningDO dbPlanning);

}
