package cn.iocoder.yudao.module.research.service.guideline;
|
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.module.research.controller.admin.guideline.vo.ResearchGuidelinePageReqVO;
|
import cn.iocoder.yudao.module.research.controller.admin.guideline.vo.ResearchGuidelineSaveReqVO;
|
import cn.iocoder.yudao.module.research.dal.dataobject.guideline.ResearchGuidelineDO;
|
|
import jakarta.validation.Valid;
|
import java.util.Collection;
|
import java.util.List;
|
|
public interface ResearchGuidelineService {
|
|
Long createGuideline(@Valid ResearchGuidelineSaveReqVO createReqVO);
|
|
void updateGuideline(@Valid ResearchGuidelineSaveReqVO updateReqVO);
|
|
void deleteGuideline(Long id);
|
|
ResearchGuidelineDO getGuideline(Long id);
|
|
PageResult<ResearchGuidelineDO> getGuidelinePage(ResearchGuidelinePageReqVO pageReqVO);
|
|
/** 已发布的课题指南列表(供申报单选择指南) */
|
List<ResearchGuidelineDO> getPublishedGuidelineList();
|
|
/** 按 id 集合批量查询指南(申报单列表回显指南名称) */
|
List<ResearchGuidelineDO> getGuidelineList(Collection<Long> ids);
|
|
/** 发布指南:草稿 → 已发布 */
|
void publishGuideline(Long id);
|
|
/** 截止指南:已发布 → 已截止 */
|
void closeGuideline(Long id);
|
|
/** 校验指南是否可申报(已发布 + 在申报期内),返回该指南 */
|
ResearchGuidelineDO validateGuidelineSubmittable(Long guidelineId);
|
|
}
|